{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "c39c644e",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import scipy.io"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "e3907472",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define the GRU model\n",
    "class GRU(nn.Module):\n",
    "    def __init__(self, input_size, hidden_size, output_size):\n",
    "        super(GRU, self).__init__()\n",
    "\n",
    "        self.hidden_size = hidden_size\n",
    "\n",
    "        self.gru = nn.GRU(input_size, hidden_size, batch_first=True)\n",
    "        self.fc = nn.Linear(hidden_size, output_size)\n",
    "\n",
    "    def forward(self, x, hidden):\n",
    "        output, hidden = self.gru(x, hidden)\n",
    "        output = self.fc(output)\n",
    "        return output, hidden"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "7470972b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x size (1, 256)\n",
      "t size (1, 100)\n",
      "u size (256, 100)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# importing data\n",
    "\n",
    "# Load the .mat file\n",
    "mat_data = scipy.io.loadmat('burg.mat')\n",
    "\n",
    "# Access the variables stored in the .mat file\n",
    "# The variable names in the .mat file become keys in the loaded dictionary\n",
    "x = mat_data['x']\n",
    "t = mat_data['t']\n",
    "u = mat_data['u1']\n",
    "\n",
    "#Use the loaded variables as needed\n",
    "print(\"x size\", x.shape)\n",
    "print(\"t size\", t.shape)\n",
    "print(\"u size\", u.shape)\n",
    "\n",
    "X, T = np.meshgrid(x, t)\n",
    "# Define custom color levels\n",
    "c_levels = np.linspace(np.min(u), np.max(u), 100)\n",
    "\n",
    "# Plot the contour\n",
    "plt.figure(figsize=(15, 5))\n",
    "plt.contourf(T, X, u.T, levels=c_levels, cmap='coolwarm')\n",
    "plt.xlabel('t')\n",
    "plt.ylabel('x')\n",
    "plt.title('Burgers')\n",
    "plt.colorbar()  # Add a colorbar for the contour levels\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "c53e4fdd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<torch._C.Generator at 0x7f9c4c09def0>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Set random seed for reproducibility\n",
    "torch.manual_seed(42)\n",
    "\n",
    "# Toy problem data\n",
    "input_size = 256\n",
    "hidden_size = 32\n",
    "output_size = 256\n",
    "sequence_length = 79\n",
    "batch_size = 1\n",
    "num_epochs = 20000\n",
    "\n",
    "# Set random seed for reproducibility\n",
    "torch.manual_seed(42)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "8afa3118",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "test data shape (256,)\n",
      "test target shape (256, 20)\n",
      "input data shape (256, 79)\n",
      "Target data shape (256, 79)\n",
      "input tensor shape torch.Size([1, 79, 256])\n",
      "Target tensor shape torch.Size([1, 79, 256])\n"
     ]
    }
   ],
   "source": [
    "input_data = u[:,0:79]\n",
    "target_data = u[:,1:80]\n",
    "\n",
    "test_data = u[:,79]\n",
    "test_target = u[:,80:100]\n",
    "\n",
    "print(\"test data shape\", test_data.shape)\n",
    "print(\"test target shape\", test_target.shape)\n",
    "\n",
    "print(\"input data shape\",input_data.shape)\n",
    "print(\"Target data shape\",target_data.shape)\n",
    "\n",
    "# Convert data to tensors\n",
    "input_tensor = torch.tensor(input_data.T).view(batch_size, sequence_length, input_size).float()\n",
    "target_tensor = torch.tensor(target_data.T).view(batch_size, sequence_length, output_size).float()\n",
    "\n",
    "print(\"input tensor shape\",input_tensor.shape)\n",
    "print(\"Target tensor shape\",target_tensor.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "c16a7343",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Convert test data to tensors\n",
    "test_tensor = torch.tensor(test_data.T).view(batch_size, 1, input_size).float()\n",
    "test_target_tensor = torch.tensor(test_target.T).view(batch_size, 20, output_size).float()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "2302c939",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 10/20000, Loss: 0.04728378\n",
      "Epoch: 20/20000, Loss: 0.03538800\n",
      "Epoch: 30/20000, Loss: 0.01981042\n",
      "Epoch: 40/20000, Loss: 0.01040103\n",
      "Epoch: 50/20000, Loss: 0.00527054\n",
      "Epoch: 60/20000, Loss: 0.00318479\n",
      "Epoch: 70/20000, Loss: 0.00244968\n",
      "Epoch: 80/20000, Loss: 0.00209959\n",
      "Epoch: 90/20000, Loss: 0.00188487\n",
      "Epoch: 100/20000, Loss: 0.00172498\n",
      "Epoch: 110/20000, Loss: 0.00159098\n",
      "Epoch: 120/20000, Loss: 0.00147008\n",
      "Epoch: 130/20000, Loss: 0.00135938\n",
      "Epoch: 140/20000, Loss: 0.00125891\n",
      "Epoch: 150/20000, Loss: 0.00116816\n",
      "Epoch: 160/20000, Loss: 0.00159141\n",
      "Epoch: 170/20000, Loss: 0.00109952\n",
      "Epoch: 180/20000, Loss: 0.00101929\n",
      "Epoch: 190/20000, Loss: 0.00091804\n",
      "Epoch: 200/20000, Loss: 0.00085555\n",
      "Epoch: 210/20000, Loss: 0.00079142\n",
      "Epoch: 220/20000, Loss: 0.00073952\n",
      "Epoch: 230/20000, Loss: 0.00069706\n",
      "Epoch: 240/20000, Loss: 0.00065802\n",
      "Epoch: 250/20000, Loss: 0.00062206\n",
      "Epoch: 260/20000, Loss: 0.00058831\n",
      "Epoch: 270/20000, Loss: 0.00055650\n",
      "Epoch: 280/20000, Loss: 0.00052637\n",
      "Epoch: 290/20000, Loss: 0.00068047\n",
      "Epoch: 300/20000, Loss: 0.00054905\n",
      "Epoch: 310/20000, Loss: 0.00046863\n",
      "Epoch: 320/20000, Loss: 0.00041480\n",
      "Epoch: 330/20000, Loss: 0.00039277\n",
      "Epoch: 340/20000, Loss: 0.00036495\n",
      "Epoch: 350/20000, Loss: 0.00033920\n",
      "Epoch: 360/20000, Loss: 0.00033401\n",
      "Epoch: 370/20000, Loss: 0.00030097\n",
      "Epoch: 380/20000, Loss: 0.00027975\n",
      "Epoch: 390/20000, Loss: 0.00026418\n",
      "Epoch: 400/20000, Loss: 0.00023807\n",
      "Epoch: 410/20000, Loss: 0.00021374\n",
      "Epoch: 420/20000, Loss: 0.00020895\n",
      "Epoch: 430/20000, Loss: 0.00028834\n",
      "Epoch: 440/20000, Loss: 0.00019961\n",
      "Epoch: 450/20000, Loss: 0.00016854\n",
      "Epoch: 460/20000, Loss: 0.00015339\n",
      "Epoch: 470/20000, Loss: 0.00013658\n",
      "Epoch: 480/20000, Loss: 0.00013990\n",
      "Epoch: 490/20000, Loss: 0.00024050\n",
      "Epoch: 500/20000, Loss: 0.00013908\n",
      "Epoch: 510/20000, Loss: 0.00011018\n",
      "Epoch: 520/20000, Loss: 0.00010217\n",
      "Epoch: 530/20000, Loss: 0.00009902\n",
      "Epoch: 540/20000, Loss: 0.00009276\n",
      "Epoch: 550/20000, Loss: 0.00009950\n",
      "Epoch: 560/20000, Loss: 0.00023031\n",
      "Epoch: 570/20000, Loss: 0.00009890\n",
      "Epoch: 580/20000, Loss: 0.00008433\n",
      "Epoch: 590/20000, Loss: 0.00008373\n",
      "Epoch: 600/20000, Loss: 0.00007759\n",
      "Epoch: 610/20000, Loss: 0.00007476\n",
      "Epoch: 620/20000, Loss: 0.00007198\n",
      "Epoch: 630/20000, Loss: 0.00007222\n",
      "Epoch: 640/20000, Loss: 0.00013341\n",
      "Epoch: 650/20000, Loss: 0.00007100\n",
      "Epoch: 660/20000, Loss: 0.00009725\n",
      "Epoch: 670/20000, Loss: 0.00006636\n",
      "Epoch: 680/20000, Loss: 0.00006739\n",
      "Epoch: 690/20000, Loss: 0.00006536\n",
      "Epoch: 700/20000, Loss: 0.00006350\n",
      "Epoch: 710/20000, Loss: 0.00006204\n",
      "Epoch: 720/20000, Loss: 0.00006161\n",
      "Epoch: 730/20000, Loss: 0.00006502\n",
      "Epoch: 740/20000, Loss: 0.00024169\n",
      "Epoch: 750/20000, Loss: 0.00012625\n",
      "Epoch: 760/20000, Loss: 0.00005914\n",
      "Epoch: 770/20000, Loss: 0.00006679\n",
      "Epoch: 780/20000, Loss: 0.00005809\n",
      "Epoch: 790/20000, Loss: 0.00005660\n",
      "Epoch: 800/20000, Loss: 0.00005596\n",
      "Epoch: 810/20000, Loss: 0.00005546\n",
      "Epoch: 820/20000, Loss: 0.00005488\n",
      "Epoch: 830/20000, Loss: 0.00005513\n",
      "Epoch: 840/20000, Loss: 0.00008975\n",
      "Epoch: 850/20000, Loss: 0.00008880\n",
      "Epoch: 860/20000, Loss: 0.00008815\n",
      "Epoch: 870/20000, Loss: 0.00005603\n",
      "Epoch: 880/20000, Loss: 0.00005757\n",
      "Epoch: 890/20000, Loss: 0.00005120\n",
      "Epoch: 900/20000, Loss: 0.00005110\n",
      "Epoch: 910/20000, Loss: 0.00005032\n",
      "Epoch: 920/20000, Loss: 0.00004967\n",
      "Epoch: 930/20000, Loss: 0.00004898\n",
      "Epoch: 940/20000, Loss: 0.00004864\n",
      "Epoch: 950/20000, Loss: 0.00006046\n",
      "Epoch: 960/20000, Loss: 0.00006959\n",
      "Epoch: 970/20000, Loss: 0.00012110\n",
      "Epoch: 980/20000, Loss: 0.00005128\n",
      "Epoch: 990/20000, Loss: 0.00005387\n",
      "Epoch: 1000/20000, Loss: 0.00004945\n",
      "Epoch: 1010/20000, Loss: 0.00004703\n",
      "Epoch: 1020/20000, Loss: 0.00004519\n",
      "Epoch: 1030/20000, Loss: 0.00004410\n",
      "Epoch: 1040/20000, Loss: 0.00004389\n",
      "Epoch: 1050/20000, Loss: 0.00004612\n",
      "Epoch: 1060/20000, Loss: 0.00013988\n",
      "Epoch: 1070/20000, Loss: 0.00007736\n",
      "Epoch: 1080/20000, Loss: 0.00006240\n",
      "Epoch: 1090/20000, Loss: 0.00004505\n",
      "Epoch: 1100/20000, Loss: 0.00004413\n",
      "Epoch: 1110/20000, Loss: 0.00004191\n",
      "Epoch: 1120/20000, Loss: 0.00005733\n",
      "Epoch: 1130/20000, Loss: 0.00004154\n",
      "Epoch: 1140/20000, Loss: 0.00004605\n",
      "Epoch: 1150/20000, Loss: 0.00004292\n",
      "Epoch: 1160/20000, Loss: 0.00004011\n",
      "Epoch: 1170/20000, Loss: 0.00004083\n",
      "Epoch: 1180/20000, Loss: 0.00017131\n",
      "Epoch: 1190/20000, Loss: 0.00011390\n",
      "Epoch: 1200/20000, Loss: 0.00003860\n",
      "Epoch: 1210/20000, Loss: 0.00004463\n",
      "Epoch: 1220/20000, Loss: 0.00004557\n",
      "Epoch: 1230/20000, Loss: 0.00006716\n",
      "Epoch: 1240/20000, Loss: 0.00004045\n",
      "Epoch: 1250/20000, Loss: 0.00003636\n",
      "Epoch: 1260/20000, Loss: 0.00003635\n",
      "Epoch: 1270/20000, Loss: 0.00003401\n",
      "Epoch: 1280/20000, Loss: 0.00003448\n",
      "Epoch: 1290/20000, Loss: 0.00003986\n",
      "Epoch: 1300/20000, Loss: 0.00007228\n",
      "Epoch: 1310/20000, Loss: 0.00011059\n",
      "Epoch: 1320/20000, Loss: 0.00003627\n",
      "Epoch: 1330/20000, Loss: 0.00003656\n",
      "Epoch: 1340/20000, Loss: 0.00003466\n",
      "Epoch: 1350/20000, Loss: 0.00003133\n",
      "Epoch: 1360/20000, Loss: 0.00003273\n",
      "Epoch: 1370/20000, Loss: 0.00003765\n",
      "Epoch: 1380/20000, Loss: 0.00006002\n",
      "Epoch: 1390/20000, Loss: 0.00012113\n",
      "Epoch: 1400/20000, Loss: 0.00004288\n",
      "Epoch: 1410/20000, Loss: 0.00004333\n",
      "Epoch: 1420/20000, Loss: 0.00003491\n",
      "Epoch: 1430/20000, Loss: 0.00003161\n",
      "Epoch: 1440/20000, Loss: 0.00003322\n",
      "Epoch: 1450/20000, Loss: 0.00006623\n",
      "Epoch: 1460/20000, Loss: 0.00004484\n",
      "Epoch: 1470/20000, Loss: 0.00004622\n",
      "Epoch: 1480/20000, Loss: 0.00006259\n",
      "Epoch: 1490/20000, Loss: 0.00002839\n",
      "Epoch: 1500/20000, Loss: 0.00003198\n",
      "Epoch: 1510/20000, Loss: 0.00003065\n",
      "Epoch: 1520/20000, Loss: 0.00005598\n",
      "Epoch: 1530/20000, Loss: 0.00010803\n",
      "Epoch: 1540/20000, Loss: 0.00002939\n",
      "Epoch: 1550/20000, Loss: 0.00003352\n",
      "Epoch: 1560/20000, Loss: 0.00003054\n",
      "Epoch: 1570/20000, Loss: 0.00002709\n",
      "Epoch: 1580/20000, Loss: 0.00002479\n",
      "Epoch: 1590/20000, Loss: 0.00002978\n",
      "Epoch: 1600/20000, Loss: 0.00007460\n",
      "Epoch: 1610/20000, Loss: 0.00003828\n",
      "Epoch: 1620/20000, Loss: 0.00012426\n",
      "Epoch: 1630/20000, Loss: 0.00004217\n",
      "Epoch: 1640/20000, Loss: 0.00003564\n",
      "Epoch: 1650/20000, Loss: 0.00002757\n",
      "Epoch: 1660/20000, Loss: 0.00002455\n",
      "Epoch: 1670/20000, Loss: 0.00002230\n",
      "Epoch: 1680/20000, Loss: 0.00002242\n",
      "Epoch: 1690/20000, Loss: 0.00002330\n",
      "Epoch: 1700/20000, Loss: 0.00008223\n",
      "Epoch: 1710/20000, Loss: 0.00012352\n",
      "Epoch: 1720/20000, Loss: 0.00002657\n",
      "Epoch: 1730/20000, Loss: 0.00003239\n",
      "Epoch: 1740/20000, Loss: 0.00002468\n",
      "Epoch: 1750/20000, Loss: 0.00002214\n",
      "Epoch: 1760/20000, Loss: 0.00001956\n",
      "Epoch: 1770/20000, Loss: 0.00001967\n",
      "Epoch: 1780/20000, Loss: 0.00002263\n",
      "Epoch: 1790/20000, Loss: 0.00007049\n",
      "Epoch: 1800/20000, Loss: 0.00002236\n",
      "Epoch: 1810/20000, Loss: 0.00001975\n",
      "Epoch: 1820/20000, Loss: 0.00006225\n",
      "Epoch: 1830/20000, Loss: 0.00003525\n",
      "Epoch: 1840/20000, Loss: 0.00002390\n",
      "Epoch: 1850/20000, Loss: 0.00001875\n",
      "Epoch: 1860/20000, Loss: 0.00001845\n",
      "Epoch: 1870/20000, Loss: 0.00002441\n",
      "Epoch: 1880/20000, Loss: 0.00016170\n",
      "Epoch: 1890/20000, Loss: 0.00007802\n",
      "Epoch: 1900/20000, Loss: 0.00002981\n",
      "Epoch: 1910/20000, Loss: 0.00002172\n",
      "Epoch: 1920/20000, Loss: 0.00002192\n",
      "Epoch: 1930/20000, Loss: 0.00002011\n",
      "Epoch: 1940/20000, Loss: 0.00001883\n",
      "Epoch: 1950/20000, Loss: 0.00001748\n",
      "Epoch: 1960/20000, Loss: 0.00002237\n",
      "Epoch: 1970/20000, Loss: 0.00011710\n",
      "Epoch: 1980/20000, Loss: 0.00004533\n",
      "Epoch: 1990/20000, Loss: 0.00003278\n",
      "Epoch: 2000/20000, Loss: 0.00002036\n",
      "Epoch: 2010/20000, Loss: 0.00002253\n",
      "Epoch: 2020/20000, Loss: 0.00007631\n",
      "Epoch: 2030/20000, Loss: 0.00001798\n",
      "Epoch: 2040/20000, Loss: 0.00001712\n",
      "Epoch: 2050/20000, Loss: 0.00001837\n",
      "Epoch: 2060/20000, Loss: 0.00001690\n",
      "Epoch: 2070/20000, Loss: 0.00001526\n",
      "Epoch: 2080/20000, Loss: 0.00001690\n",
      "Epoch: 2090/20000, Loss: 0.00003745\n",
      "Epoch: 2100/20000, Loss: 0.00002128\n",
      "Epoch: 2110/20000, Loss: 0.00007526\n",
      "Epoch: 2120/20000, Loss: 0.00002808\n",
      "Epoch: 2130/20000, Loss: 0.00002166\n",
      "Epoch: 2140/20000, Loss: 0.00001628\n",
      "Epoch: 2150/20000, Loss: 0.00001525\n",
      "Epoch: 2160/20000, Loss: 0.00001730\n",
      "Epoch: 2170/20000, Loss: 0.00001906\n",
      "Epoch: 2180/20000, Loss: 0.00006903\n",
      "Epoch: 2190/20000, Loss: 0.00006373\n",
      "Epoch: 2200/20000, Loss: 0.00003296\n",
      "Epoch: 2210/20000, Loss: 0.00002153\n",
      "Epoch: 2220/20000, Loss: 0.00002097\n",
      "Epoch: 2230/20000, Loss: 0.00002225\n",
      "Epoch: 2240/20000, Loss: 0.00009111\n",
      "Epoch: 2250/20000, Loss: 0.00001860\n",
      "Epoch: 2260/20000, Loss: 0.00003059\n",
      "Epoch: 2270/20000, Loss: 0.00002328\n",
      "Epoch: 2280/20000, Loss: 0.00001732\n",
      "Epoch: 2290/20000, Loss: 0.00001662\n",
      "Epoch: 2300/20000, Loss: 0.00001628\n",
      "Epoch: 2310/20000, Loss: 0.00001589\n",
      "Epoch: 2320/20000, Loss: 0.00002296\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 2330/20000, Loss: 0.00015680\n",
      "Epoch: 2340/20000, Loss: 0.00002256\n",
      "Epoch: 2350/20000, Loss: 0.00002917\n",
      "Epoch: 2360/20000, Loss: 0.00001790\n",
      "Epoch: 2370/20000, Loss: 0.00002162\n",
      "Epoch: 2380/20000, Loss: 0.00008417\n",
      "Epoch: 2390/20000, Loss: 0.00001587\n",
      "Epoch: 2400/20000, Loss: 0.00002302\n",
      "Epoch: 2410/20000, Loss: 0.00001903\n",
      "Epoch: 2420/20000, Loss: 0.00001542\n",
      "Epoch: 2430/20000, Loss: 0.00001447\n",
      "Epoch: 2440/20000, Loss: 0.00001441\n",
      "Epoch: 2450/20000, Loss: 0.00001377\n",
      "Epoch: 2460/20000, Loss: 0.00001418\n",
      "Epoch: 2470/20000, Loss: 0.00003514\n",
      "Epoch: 2480/20000, Loss: 0.00016184\n",
      "Epoch: 2490/20000, Loss: 0.00001569\n",
      "Epoch: 2500/20000, Loss: 0.00003377\n",
      "Epoch: 2510/20000, Loss: 0.00001706\n",
      "Epoch: 2520/20000, Loss: 0.00001675\n",
      "Epoch: 2530/20000, Loss: 0.00001401\n",
      "Epoch: 2540/20000, Loss: 0.00001310\n",
      "Epoch: 2550/20000, Loss: 0.00001301\n",
      "Epoch: 2560/20000, Loss: 0.00001286\n",
      "Epoch: 2570/20000, Loss: 0.00001279\n",
      "Epoch: 2580/20000, Loss: 0.00001298\n",
      "Epoch: 2590/20000, Loss: 0.00002576\n",
      "Epoch: 2600/20000, Loss: 0.00014507\n",
      "Epoch: 2610/20000, Loss: 0.00002034\n",
      "Epoch: 2620/20000, Loss: 0.00002215\n",
      "Epoch: 2630/20000, Loss: 0.00001572\n",
      "Epoch: 2640/20000, Loss: 0.00001431\n",
      "Epoch: 2650/20000, Loss: 0.00001627\n",
      "Epoch: 2660/20000, Loss: 0.00005584\n",
      "Epoch: 2670/20000, Loss: 0.00003819\n",
      "Epoch: 2680/20000, Loss: 0.00002659\n",
      "Epoch: 2690/20000, Loss: 0.00002005\n",
      "Epoch: 2700/20000, Loss: 0.00001621\n",
      "Epoch: 2710/20000, Loss: 0.00001215\n",
      "Epoch: 2720/20000, Loss: 0.00001374\n",
      "Epoch: 2730/20000, Loss: 0.00001885\n",
      "Epoch: 2740/20000, Loss: 0.00006805\n",
      "Epoch: 2750/20000, Loss: 0.00003666\n",
      "Epoch: 2760/20000, Loss: 0.00002184\n",
      "Epoch: 2770/20000, Loss: 0.00002005\n",
      "Epoch: 2780/20000, Loss: 0.00001817\n",
      "Epoch: 2790/20000, Loss: 0.00001302\n",
      "Epoch: 2800/20000, Loss: 0.00001287\n",
      "Epoch: 2810/20000, Loss: 0.00002860\n",
      "Epoch: 2820/20000, Loss: 0.00026103\n",
      "Epoch: 2830/20000, Loss: 0.00005679\n",
      "Epoch: 2840/20000, Loss: 0.00003179\n",
      "Epoch: 2850/20000, Loss: 0.00002005\n",
      "Epoch: 2860/20000, Loss: 0.00001494\n",
      "Epoch: 2870/20000, Loss: 0.00001245\n",
      "Epoch: 2880/20000, Loss: 0.00001180\n",
      "Epoch: 2890/20000, Loss: 0.00001158\n",
      "Epoch: 2900/20000, Loss: 0.00001207\n",
      "Epoch: 2910/20000, Loss: 0.00003465\n",
      "Epoch: 2920/20000, Loss: 0.00002860\n",
      "Epoch: 2930/20000, Loss: 0.00002545\n",
      "Epoch: 2940/20000, Loss: 0.00002211\n",
      "Epoch: 2950/20000, Loss: 0.00001672\n",
      "Epoch: 2960/20000, Loss: 0.00001135\n",
      "Epoch: 2970/20000, Loss: 0.00001310\n",
      "Epoch: 2980/20000, Loss: 0.00001431\n",
      "Epoch: 2990/20000, Loss: 0.00003377\n",
      "Epoch: 3000/20000, Loss: 0.00007670\n",
      "Epoch: 3010/20000, Loss: 0.00006627\n",
      "Epoch: 3020/20000, Loss: 0.00003167\n",
      "Epoch: 3030/20000, Loss: 0.00002184\n",
      "Epoch: 3040/20000, Loss: 0.00001477\n",
      "Epoch: 3050/20000, Loss: 0.00001282\n",
      "Epoch: 3060/20000, Loss: 0.00003324\n",
      "Epoch: 3070/20000, Loss: 0.00014854\n",
      "Epoch: 3080/20000, Loss: 0.00003690\n",
      "Epoch: 3090/20000, Loss: 0.00001614\n",
      "Epoch: 3100/20000, Loss: 0.00001616\n",
      "Epoch: 3110/20000, Loss: 0.00001218\n",
      "Epoch: 3120/20000, Loss: 0.00001142\n",
      "Epoch: 3130/20000, Loss: 0.00001428\n",
      "Epoch: 3140/20000, Loss: 0.00005595\n",
      "Epoch: 3150/20000, Loss: 0.00001495\n",
      "Epoch: 3160/20000, Loss: 0.00001869\n",
      "Epoch: 3170/20000, Loss: 0.00002090\n",
      "Epoch: 3180/20000, Loss: 0.00002613\n",
      "Epoch: 3190/20000, Loss: 0.00005024\n",
      "Epoch: 3200/20000, Loss: 0.00001163\n",
      "Epoch: 3210/20000, Loss: 0.00001779\n",
      "Epoch: 3220/20000, Loss: 0.00002657\n",
      "Epoch: 3230/20000, Loss: 0.00003710\n",
      "Epoch: 3240/20000, Loss: 0.00006007\n",
      "Epoch: 3250/20000, Loss: 0.00007475\n",
      "Epoch: 3260/20000, Loss: 0.00005765\n",
      "Epoch: 3270/20000, Loss: 0.00002074\n",
      "Epoch: 3280/20000, Loss: 0.00001316\n",
      "Epoch: 3290/20000, Loss: 0.00001246\n",
      "Epoch: 3300/20000, Loss: 0.00001062\n",
      "Epoch: 3310/20000, Loss: 0.00001017\n",
      "Epoch: 3320/20000, Loss: 0.00001000\n",
      "Epoch: 3330/20000, Loss: 0.00001033\n",
      "Epoch: 3340/20000, Loss: 0.00002037\n",
      "Epoch: 3350/20000, Loss: 0.00012969\n",
      "Epoch: 3360/20000, Loss: 0.00005109\n",
      "Epoch: 3370/20000, Loss: 0.00002639\n",
      "Epoch: 3380/20000, Loss: 0.00001385\n",
      "Epoch: 3390/20000, Loss: 0.00000992\n",
      "Epoch: 3400/20000, Loss: 0.00001307\n",
      "Epoch: 3410/20000, Loss: 0.00001012\n",
      "Epoch: 3420/20000, Loss: 0.00001898\n",
      "Epoch: 3430/20000, Loss: 0.00011084\n",
      "Epoch: 3440/20000, Loss: 0.00006605\n",
      "Epoch: 3450/20000, Loss: 0.00001634\n",
      "Epoch: 3460/20000, Loss: 0.00002454\n",
      "Epoch: 3470/20000, Loss: 0.00001680\n",
      "Epoch: 3480/20000, Loss: 0.00002348\n",
      "Epoch: 3490/20000, Loss: 0.00005108\n",
      "Epoch: 3500/20000, Loss: 0.00001441\n",
      "Epoch: 3510/20000, Loss: 0.00001233\n",
      "Epoch: 3520/20000, Loss: 0.00002538\n",
      "Epoch: 3530/20000, Loss: 0.00005775\n",
      "Epoch: 3540/20000, Loss: 0.00001095\n",
      "Epoch: 3550/20000, Loss: 0.00001739\n",
      "Epoch: 3560/20000, Loss: 0.00002321\n",
      "Epoch: 3570/20000, Loss: 0.00003360\n",
      "Epoch: 3580/20000, Loss: 0.00000946\n",
      "Epoch: 3590/20000, Loss: 0.00001250\n",
      "Epoch: 3600/20000, Loss: 0.00004235\n",
      "Epoch: 3610/20000, Loss: 0.00026769\n",
      "Epoch: 3620/20000, Loss: 0.00009475\n",
      "Epoch: 3630/20000, Loss: 0.00003696\n",
      "Epoch: 3640/20000, Loss: 0.00001548\n",
      "Epoch: 3650/20000, Loss: 0.00001085\n",
      "Epoch: 3660/20000, Loss: 0.00000978\n",
      "Epoch: 3670/20000, Loss: 0.00000900\n",
      "Epoch: 3680/20000, Loss: 0.00000862\n",
      "Epoch: 3690/20000, Loss: 0.00000839\n",
      "Epoch: 3700/20000, Loss: 0.00000824\n",
      "Epoch: 3710/20000, Loss: 0.00000816\n",
      "Epoch: 3720/20000, Loss: 0.00000807\n",
      "Epoch: 3730/20000, Loss: 0.00000799\n",
      "Epoch: 3740/20000, Loss: 0.00000792\n",
      "Epoch: 3750/20000, Loss: 0.00000800\n",
      "Epoch: 3760/20000, Loss: 0.00003170\n",
      "Epoch: 3770/20000, Loss: 0.00014037\n",
      "Epoch: 3780/20000, Loss: 0.00005451\n",
      "Epoch: 3790/20000, Loss: 0.00003376\n",
      "Epoch: 3800/20000, Loss: 0.00001520\n",
      "Epoch: 3810/20000, Loss: 0.00001099\n",
      "Epoch: 3820/20000, Loss: 0.00000831\n",
      "Epoch: 3830/20000, Loss: 0.00000817\n",
      "Epoch: 3840/20000, Loss: 0.00000774\n",
      "Epoch: 3850/20000, Loss: 0.00000760\n",
      "Epoch: 3860/20000, Loss: 0.00000750\n",
      "Epoch: 3870/20000, Loss: 0.00000739\n",
      "Epoch: 3880/20000, Loss: 0.00000731\n",
      "Epoch: 3890/20000, Loss: 0.00000724\n",
      "Epoch: 3900/20000, Loss: 0.00000782\n",
      "Epoch: 3910/20000, Loss: 0.00006808\n",
      "Epoch: 3920/20000, Loss: 0.00003288\n",
      "Epoch: 3930/20000, Loss: 0.00004986\n",
      "Epoch: 3940/20000, Loss: 0.00002969\n",
      "Epoch: 3950/20000, Loss: 0.00000818\n",
      "Epoch: 3960/20000, Loss: 0.00000818\n",
      "Epoch: 3970/20000, Loss: 0.00000841\n",
      "Epoch: 3980/20000, Loss: 0.00000736\n",
      "Epoch: 3990/20000, Loss: 0.00000686\n",
      "Epoch: 4000/20000, Loss: 0.00000673\n",
      "Epoch: 4010/20000, Loss: 0.00001091\n",
      "Epoch: 4020/20000, Loss: 0.00027192\n",
      "Epoch: 4030/20000, Loss: 0.00014532\n",
      "Epoch: 4040/20000, Loss: 0.00005301\n",
      "Epoch: 4050/20000, Loss: 0.00001496\n",
      "Epoch: 4060/20000, Loss: 0.00000784\n",
      "Epoch: 4070/20000, Loss: 0.00000773\n",
      "Epoch: 4080/20000, Loss: 0.00000693\n",
      "Epoch: 4090/20000, Loss: 0.00000655\n",
      "Epoch: 4100/20000, Loss: 0.00000632\n",
      "Epoch: 4110/20000, Loss: 0.00000623\n",
      "Epoch: 4120/20000, Loss: 0.00000616\n",
      "Epoch: 4130/20000, Loss: 0.00000703\n",
      "Epoch: 4140/20000, Loss: 0.00004310\n",
      "Epoch: 4150/20000, Loss: 0.00001400\n",
      "Epoch: 4160/20000, Loss: 0.00003123\n",
      "Epoch: 4170/20000, Loss: 0.00001465\n",
      "Epoch: 4180/20000, Loss: 0.00001660\n",
      "Epoch: 4190/20000, Loss: 0.00000904\n",
      "Epoch: 4200/20000, Loss: 0.00000793\n",
      "Epoch: 4210/20000, Loss: 0.00003180\n",
      "Epoch: 4220/20000, Loss: 0.00009607\n",
      "Epoch: 4230/20000, Loss: 0.00005571\n",
      "Epoch: 4240/20000, Loss: 0.00002732\n",
      "Epoch: 4250/20000, Loss: 0.00000731\n",
      "Epoch: 4260/20000, Loss: 0.00000920\n",
      "Epoch: 4270/20000, Loss: 0.00000986\n",
      "Epoch: 4280/20000, Loss: 0.00001354\n",
      "Epoch: 4290/20000, Loss: 0.00006256\n",
      "Epoch: 4300/20000, Loss: 0.00001482\n",
      "Epoch: 4310/20000, Loss: 0.00003960\n",
      "Epoch: 4320/20000, Loss: 0.00003068\n",
      "Epoch: 4330/20000, Loss: 0.00000921\n",
      "Epoch: 4340/20000, Loss: 0.00000661\n",
      "Epoch: 4350/20000, Loss: 0.00000893\n",
      "Epoch: 4360/20000, Loss: 0.00011282\n",
      "Epoch: 4370/20000, Loss: 0.00003134\n",
      "Epoch: 4380/20000, Loss: 0.00001388\n",
      "Epoch: 4390/20000, Loss: 0.00001199\n",
      "Epoch: 4400/20000, Loss: 0.00001264\n",
      "Epoch: 4410/20000, Loss: 0.00000598\n",
      "Epoch: 4420/20000, Loss: 0.00000693\n",
      "Epoch: 4430/20000, Loss: 0.00000565\n",
      "Epoch: 4440/20000, Loss: 0.00000909\n",
      "Epoch: 4450/20000, Loss: 0.00007004\n",
      "Epoch: 4460/20000, Loss: 0.00010641\n",
      "Epoch: 4470/20000, Loss: 0.00006365\n",
      "Epoch: 4480/20000, Loss: 0.00001302\n",
      "Epoch: 4490/20000, Loss: 0.00001238\n",
      "Epoch: 4500/20000, Loss: 0.00000776\n",
      "Epoch: 4510/20000, Loss: 0.00000523\n",
      "Epoch: 4520/20000, Loss: 0.00000625\n",
      "Epoch: 4530/20000, Loss: 0.00001345\n",
      "Epoch: 4540/20000, Loss: 0.00007115\n",
      "Epoch: 4550/20000, Loss: 0.00000598\n",
      "Epoch: 4560/20000, Loss: 0.00001914\n",
      "Epoch: 4570/20000, Loss: 0.00001176\n",
      "Epoch: 4580/20000, Loss: 0.00000724\n",
      "Epoch: 4590/20000, Loss: 0.00001471\n",
      "Epoch: 4600/20000, Loss: 0.00007919\n",
      "Epoch: 4610/20000, Loss: 0.00000920\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 4620/20000, Loss: 0.00002409\n",
      "Epoch: 4630/20000, Loss: 0.00000841\n",
      "Epoch: 4640/20000, Loss: 0.00000462\n",
      "Epoch: 4650/20000, Loss: 0.00000645\n",
      "Epoch: 4660/20000, Loss: 0.00005495\n",
      "Epoch: 4670/20000, Loss: 0.00002271\n",
      "Epoch: 4680/20000, Loss: 0.00003102\n",
      "Epoch: 4690/20000, Loss: 0.00001214\n",
      "Epoch: 4700/20000, Loss: 0.00000919\n",
      "Epoch: 4710/20000, Loss: 0.00001255\n",
      "Epoch: 4720/20000, Loss: 0.00002357\n",
      "Epoch: 4730/20000, Loss: 0.00006819\n",
      "Epoch: 4740/20000, Loss: 0.00000379\n",
      "Epoch: 4750/20000, Loss: 0.00001650\n",
      "Epoch: 4760/20000, Loss: 0.00000668\n",
      "Epoch: 4770/20000, Loss: 0.00000388\n",
      "Epoch: 4780/20000, Loss: 0.00000390\n",
      "Epoch: 4790/20000, Loss: 0.00001052\n",
      "Epoch: 4800/20000, Loss: 0.00022021\n",
      "Epoch: 4810/20000, Loss: 0.00013571\n",
      "Epoch: 4820/20000, Loss: 0.00004957\n",
      "Epoch: 4830/20000, Loss: 0.00001303\n",
      "Epoch: 4840/20000, Loss: 0.00001057\n",
      "Epoch: 4850/20000, Loss: 0.00000775\n",
      "Epoch: 4860/20000, Loss: 0.00000555\n",
      "Epoch: 4870/20000, Loss: 0.00000409\n",
      "Epoch: 4880/20000, Loss: 0.00000372\n",
      "Epoch: 4890/20000, Loss: 0.00000330\n",
      "Epoch: 4900/20000, Loss: 0.00000332\n",
      "Epoch: 4910/20000, Loss: 0.00000312\n",
      "Epoch: 4920/20000, Loss: 0.00000311\n",
      "Epoch: 4930/20000, Loss: 0.00000326\n",
      "Epoch: 4940/20000, Loss: 0.00001030\n",
      "Epoch: 4950/20000, Loss: 0.00012202\n",
      "Epoch: 4960/20000, Loss: 0.00023109\n",
      "Epoch: 4970/20000, Loss: 0.00004119\n",
      "Epoch: 4980/20000, Loss: 0.00001549\n",
      "Epoch: 4990/20000, Loss: 0.00000725\n",
      "Epoch: 5000/20000, Loss: 0.00000429\n",
      "Epoch: 5010/20000, Loss: 0.00000338\n",
      "Epoch: 5020/20000, Loss: 0.00000333\n",
      "Epoch: 5030/20000, Loss: 0.00000305\n",
      "Epoch: 5040/20000, Loss: 0.00000293\n",
      "Epoch: 5050/20000, Loss: 0.00000304\n",
      "Epoch: 5060/20000, Loss: 0.00002957\n",
      "Epoch: 5070/20000, Loss: 0.00009995\n",
      "Epoch: 5080/20000, Loss: 0.00000811\n",
      "Epoch: 5090/20000, Loss: 0.00002939\n",
      "Epoch: 5100/20000, Loss: 0.00001770\n",
      "Epoch: 5110/20000, Loss: 0.00000504\n",
      "Epoch: 5120/20000, Loss: 0.00000344\n",
      "Epoch: 5130/20000, Loss: 0.00000281\n",
      "Epoch: 5140/20000, Loss: 0.00000281\n",
      "Epoch: 5150/20000, Loss: 0.00000279\n",
      "Epoch: 5160/20000, Loss: 0.00000273\n",
      "Epoch: 5170/20000, Loss: 0.00000292\n",
      "Epoch: 5180/20000, Loss: 0.00000270\n",
      "Epoch: 5190/20000, Loss: 0.00000289\n",
      "Epoch: 5200/20000, Loss: 0.00001304\n",
      "Epoch: 5210/20000, Loss: 0.00010061\n",
      "Epoch: 5220/20000, Loss: 0.00004737\n",
      "Epoch: 5230/20000, Loss: 0.00002068\n",
      "Epoch: 5240/20000, Loss: 0.00001168\n",
      "Epoch: 5250/20000, Loss: 0.00000710\n",
      "Epoch: 5260/20000, Loss: 0.00000698\n",
      "Epoch: 5270/20000, Loss: 0.00002821\n",
      "Epoch: 5280/20000, Loss: 0.00009047\n",
      "Epoch: 5290/20000, Loss: 0.00001245\n",
      "Epoch: 5300/20000, Loss: 0.00001418\n",
      "Epoch: 5310/20000, Loss: 0.00000252\n",
      "Epoch: 5320/20000, Loss: 0.00000641\n",
      "Epoch: 5330/20000, Loss: 0.00002086\n",
      "Epoch: 5340/20000, Loss: 0.00005044\n",
      "Epoch: 5350/20000, Loss: 0.00001467\n",
      "Epoch: 5360/20000, Loss: 0.00001708\n",
      "Epoch: 5370/20000, Loss: 0.00002014\n",
      "Epoch: 5380/20000, Loss: 0.00002696\n",
      "Epoch: 5390/20000, Loss: 0.00002242\n",
      "Epoch: 5400/20000, Loss: 0.00001306\n",
      "Epoch: 5410/20000, Loss: 0.00001253\n",
      "Epoch: 5420/20000, Loss: 0.00001768\n",
      "Epoch: 5430/20000, Loss: 0.00003392\n",
      "Epoch: 5440/20000, Loss: 0.00008656\n",
      "Epoch: 5450/20000, Loss: 0.00004669\n",
      "Epoch: 5460/20000, Loss: 0.00002749\n",
      "Epoch: 5470/20000, Loss: 0.00001236\n",
      "Epoch: 5480/20000, Loss: 0.00000618\n",
      "Epoch: 5490/20000, Loss: 0.00000443\n",
      "Epoch: 5500/20000, Loss: 0.00000350\n",
      "Epoch: 5510/20000, Loss: 0.00000359\n",
      "Epoch: 5520/20000, Loss: 0.00002724\n",
      "Epoch: 5530/20000, Loss: 0.00016914\n",
      "Epoch: 5540/20000, Loss: 0.00003924\n",
      "Epoch: 5550/20000, Loss: 0.00000535\n",
      "Epoch: 5560/20000, Loss: 0.00001011\n",
      "Epoch: 5570/20000, Loss: 0.00000797\n",
      "Epoch: 5580/20000, Loss: 0.00000252\n",
      "Epoch: 5590/20000, Loss: 0.00000253\n",
      "Epoch: 5600/20000, Loss: 0.00000541\n",
      "Epoch: 5610/20000, Loss: 0.00004036\n",
      "Epoch: 5620/20000, Loss: 0.00002214\n",
      "Epoch: 5630/20000, Loss: 0.00001358\n",
      "Epoch: 5640/20000, Loss: 0.00001909\n",
      "Epoch: 5650/20000, Loss: 0.00000577\n",
      "Epoch: 5660/20000, Loss: 0.00000592\n",
      "Epoch: 5670/20000, Loss: 0.00002534\n",
      "Epoch: 5680/20000, Loss: 0.00005375\n",
      "Epoch: 5690/20000, Loss: 0.00006669\n",
      "Epoch: 5700/20000, Loss: 0.00001890\n",
      "Epoch: 5710/20000, Loss: 0.00001523\n",
      "Epoch: 5720/20000, Loss: 0.00001483\n",
      "Epoch: 5730/20000, Loss: 0.00001104\n",
      "Epoch: 5740/20000, Loss: 0.00001692\n",
      "Epoch: 5750/20000, Loss: 0.00003129\n",
      "Epoch: 5760/20000, Loss: 0.00001326\n",
      "Epoch: 5770/20000, Loss: 0.00000233\n",
      "Epoch: 5780/20000, Loss: 0.00000206\n",
      "Epoch: 5790/20000, Loss: 0.00000597\n",
      "Epoch: 5800/20000, Loss: 0.00012467\n",
      "Epoch: 5810/20000, Loss: 0.00005247\n",
      "Epoch: 5820/20000, Loss: 0.00003458\n",
      "Epoch: 5830/20000, Loss: 0.00001564\n",
      "Epoch: 5840/20000, Loss: 0.00000499\n",
      "Epoch: 5850/20000, Loss: 0.00000279\n",
      "Epoch: 5860/20000, Loss: 0.00000295\n",
      "Epoch: 5870/20000, Loss: 0.00000211\n",
      "Epoch: 5880/20000, Loss: 0.00000220\n",
      "Epoch: 5890/20000, Loss: 0.00000218\n",
      "Epoch: 5900/20000, Loss: 0.00000390\n",
      "Epoch: 5910/20000, Loss: 0.00004714\n",
      "Epoch: 5920/20000, Loss: 0.00008655\n",
      "Epoch: 5930/20000, Loss: 0.00003520\n",
      "Epoch: 5940/20000, Loss: 0.00002398\n",
      "Epoch: 5950/20000, Loss: 0.00001226\n",
      "Epoch: 5960/20000, Loss: 0.00000665\n",
      "Epoch: 5970/20000, Loss: 0.00000474\n",
      "Epoch: 5980/20000, Loss: 0.00000276\n",
      "Epoch: 5990/20000, Loss: 0.00000177\n",
      "Epoch: 6000/20000, Loss: 0.00000223\n",
      "Epoch: 6010/20000, Loss: 0.00000410\n",
      "Epoch: 6020/20000, Loss: 0.00006889\n",
      "Epoch: 6030/20000, Loss: 0.00005458\n",
      "Epoch: 6040/20000, Loss: 0.00003591\n",
      "Epoch: 6050/20000, Loss: 0.00002642\n",
      "Epoch: 6060/20000, Loss: 0.00000616\n",
      "Epoch: 6070/20000, Loss: 0.00000644\n",
      "Epoch: 6080/20000, Loss: 0.00000304\n",
      "Epoch: 6090/20000, Loss: 0.00000229\n",
      "Epoch: 6100/20000, Loss: 0.00000743\n",
      "Epoch: 6110/20000, Loss: 0.00011219\n",
      "Epoch: 6120/20000, Loss: 0.00000630\n",
      "Epoch: 6130/20000, Loss: 0.00000464\n",
      "Epoch: 6140/20000, Loss: 0.00001119\n",
      "Epoch: 6150/20000, Loss: 0.00000841\n",
      "Epoch: 6160/20000, Loss: 0.00000189\n",
      "Epoch: 6170/20000, Loss: 0.00000347\n",
      "Epoch: 6180/20000, Loss: 0.00000597\n",
      "Epoch: 6190/20000, Loss: 0.00002582\n",
      "Epoch: 6200/20000, Loss: 0.00006698\n",
      "Epoch: 6210/20000, Loss: 0.00001267\n",
      "Epoch: 6220/20000, Loss: 0.00001285\n",
      "Epoch: 6230/20000, Loss: 0.00000483\n",
      "Epoch: 6240/20000, Loss: 0.00000323\n",
      "Epoch: 6250/20000, Loss: 0.00001342\n",
      "Epoch: 6260/20000, Loss: 0.00012286\n",
      "Epoch: 6270/20000, Loss: 0.00002557\n",
      "Epoch: 6280/20000, Loss: 0.00000327\n",
      "Epoch: 6290/20000, Loss: 0.00000433\n",
      "Epoch: 6300/20000, Loss: 0.00000840\n",
      "Epoch: 6310/20000, Loss: 0.00000960\n",
      "Epoch: 6320/20000, Loss: 0.00000305\n",
      "Epoch: 6330/20000, Loss: 0.00000422\n",
      "Epoch: 6340/20000, Loss: 0.00002236\n",
      "Epoch: 6350/20000, Loss: 0.00008442\n",
      "Epoch: 6360/20000, Loss: 0.00002381\n",
      "Epoch: 6370/20000, Loss: 0.00001688\n",
      "Epoch: 6380/20000, Loss: 0.00001554\n",
      "Epoch: 6390/20000, Loss: 0.00000394\n",
      "Epoch: 6400/20000, Loss: 0.00000900\n",
      "Epoch: 6410/20000, Loss: 0.00003547\n",
      "Epoch: 6420/20000, Loss: 0.00003017\n",
      "Epoch: 6430/20000, Loss: 0.00000250\n",
      "Epoch: 6440/20000, Loss: 0.00001229\n",
      "Epoch: 6450/20000, Loss: 0.00003065\n",
      "Epoch: 6460/20000, Loss: 0.00002735\n",
      "Epoch: 6470/20000, Loss: 0.00000286\n",
      "Epoch: 6480/20000, Loss: 0.00000243\n",
      "Epoch: 6490/20000, Loss: 0.00000641\n",
      "Epoch: 6500/20000, Loss: 0.00007796\n",
      "Epoch: 6510/20000, Loss: 0.00001279\n",
      "Epoch: 6520/20000, Loss: 0.00000836\n",
      "Epoch: 6530/20000, Loss: 0.00000630\n",
      "Epoch: 6540/20000, Loss: 0.00000461\n",
      "Epoch: 6550/20000, Loss: 0.00000493\n",
      "Epoch: 6560/20000, Loss: 0.00000951\n",
      "Epoch: 6570/20000, Loss: 0.00005865\n",
      "Epoch: 6580/20000, Loss: 0.00000869\n",
      "Epoch: 6590/20000, Loss: 0.00000409\n",
      "Epoch: 6600/20000, Loss: 0.00000229\n",
      "Epoch: 6610/20000, Loss: 0.00000213\n",
      "Epoch: 6620/20000, Loss: 0.00001454\n",
      "Epoch: 6630/20000, Loss: 0.00014998\n",
      "Epoch: 6640/20000, Loss: 0.00003957\n",
      "Epoch: 6650/20000, Loss: 0.00001285\n",
      "Epoch: 6660/20000, Loss: 0.00000315\n",
      "Epoch: 6670/20000, Loss: 0.00000316\n",
      "Epoch: 6680/20000, Loss: 0.00000513\n",
      "Epoch: 6690/20000, Loss: 0.00000172\n",
      "Epoch: 6700/20000, Loss: 0.00000304\n",
      "Epoch: 6710/20000, Loss: 0.00000411\n",
      "Epoch: 6720/20000, Loss: 0.00002082\n",
      "Epoch: 6730/20000, Loss: 0.00003482\n",
      "Epoch: 6740/20000, Loss: 0.00007089\n",
      "Epoch: 6750/20000, Loss: 0.00005760\n",
      "Epoch: 6760/20000, Loss: 0.00001197\n",
      "Epoch: 6770/20000, Loss: 0.00001636\n",
      "Epoch: 6780/20000, Loss: 0.00000605\n",
      "Epoch: 6790/20000, Loss: 0.00000327\n",
      "Epoch: 6800/20000, Loss: 0.00000202\n",
      "Epoch: 6810/20000, Loss: 0.00000153\n",
      "Epoch: 6820/20000, Loss: 0.00000171\n",
      "Epoch: 6830/20000, Loss: 0.00000362\n",
      "Epoch: 6840/20000, Loss: 0.00004409\n",
      "Epoch: 6850/20000, Loss: 0.00002335\n",
      "Epoch: 6860/20000, Loss: 0.00003090\n",
      "Epoch: 6870/20000, Loss: 0.00000911\n",
      "Epoch: 6880/20000, Loss: 0.00000614\n",
      "Epoch: 6890/20000, Loss: 0.00000445\n",
      "Epoch: 6900/20000, Loss: 0.00000619\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 6910/20000, Loss: 0.00002069\n",
      "Epoch: 6920/20000, Loss: 0.00006414\n",
      "Epoch: 6930/20000, Loss: 0.00000842\n",
      "Epoch: 6940/20000, Loss: 0.00001977\n",
      "Epoch: 6950/20000, Loss: 0.00000535\n",
      "Epoch: 6960/20000, Loss: 0.00000429\n",
      "Epoch: 6970/20000, Loss: 0.00000836\n",
      "Epoch: 6980/20000, Loss: 0.00002950\n",
      "Epoch: 6990/20000, Loss: 0.00005390\n",
      "Epoch: 7000/20000, Loss: 0.00005338\n",
      "Epoch: 7010/20000, Loss: 0.00001713\n",
      "Epoch: 7020/20000, Loss: 0.00000265\n",
      "Epoch: 7030/20000, Loss: 0.00000783\n",
      "Epoch: 7040/20000, Loss: 0.00000678\n",
      "Epoch: 7050/20000, Loss: 0.00000662\n",
      "Epoch: 7060/20000, Loss: 0.00002158\n",
      "Epoch: 7070/20000, Loss: 0.00004565\n",
      "Epoch: 7080/20000, Loss: 0.00000213\n",
      "Epoch: 7090/20000, Loss: 0.00001275\n",
      "Epoch: 7100/20000, Loss: 0.00002262\n",
      "Epoch: 7110/20000, Loss: 0.00001832\n",
      "Epoch: 7120/20000, Loss: 0.00000976\n",
      "Epoch: 7130/20000, Loss: 0.00001441\n",
      "Epoch: 7140/20000, Loss: 0.00004196\n",
      "Epoch: 7150/20000, Loss: 0.00004719\n",
      "Epoch: 7160/20000, Loss: 0.00002480\n",
      "Epoch: 7170/20000, Loss: 0.00001079\n",
      "Epoch: 7180/20000, Loss: 0.00000442\n",
      "Epoch: 7190/20000, Loss: 0.00000378\n",
      "Epoch: 7200/20000, Loss: 0.00000962\n",
      "Epoch: 7210/20000, Loss: 0.00010153\n",
      "Epoch: 7220/20000, Loss: 0.00002578\n",
      "Epoch: 7230/20000, Loss: 0.00000597\n",
      "Epoch: 7240/20000, Loss: 0.00000287\n",
      "Epoch: 7250/20000, Loss: 0.00000192\n",
      "Epoch: 7260/20000, Loss: 0.00000191\n",
      "Epoch: 7270/20000, Loss: 0.00000288\n",
      "Epoch: 7280/20000, Loss: 0.00000580\n",
      "Epoch: 7290/20000, Loss: 0.00006870\n",
      "Epoch: 7300/20000, Loss: 0.00003017\n",
      "Epoch: 7310/20000, Loss: 0.00002546\n",
      "Epoch: 7320/20000, Loss: 0.00001602\n",
      "Epoch: 7330/20000, Loss: 0.00000587\n",
      "Epoch: 7340/20000, Loss: 0.00000378\n",
      "Epoch: 7350/20000, Loss: 0.00000212\n",
      "Epoch: 7360/20000, Loss: 0.00000234\n",
      "Epoch: 7370/20000, Loss: 0.00000469\n",
      "Epoch: 7380/20000, Loss: 0.00003753\n",
      "Epoch: 7390/20000, Loss: 0.00005267\n",
      "Epoch: 7400/20000, Loss: 0.00002563\n",
      "Epoch: 7410/20000, Loss: 0.00000785\n",
      "Epoch: 7420/20000, Loss: 0.00000384\n",
      "Epoch: 7430/20000, Loss: 0.00000608\n",
      "Epoch: 7440/20000, Loss: 0.00000975\n",
      "Epoch: 7450/20000, Loss: 0.00005927\n",
      "Epoch: 7460/20000, Loss: 0.00002034\n",
      "Epoch: 7470/20000, Loss: 0.00003440\n",
      "Epoch: 7480/20000, Loss: 0.00000800\n",
      "Epoch: 7490/20000, Loss: 0.00000398\n",
      "Epoch: 7500/20000, Loss: 0.00000480\n",
      "Epoch: 7510/20000, Loss: 0.00004001\n",
      "Epoch: 7520/20000, Loss: 0.00003806\n",
      "Epoch: 7530/20000, Loss: 0.00001224\n",
      "Epoch: 7540/20000, Loss: 0.00002344\n",
      "Epoch: 7550/20000, Loss: 0.00000630\n",
      "Epoch: 7560/20000, Loss: 0.00000604\n",
      "Epoch: 7570/20000, Loss: 0.00001285\n",
      "Epoch: 7580/20000, Loss: 0.00003756\n",
      "Epoch: 7590/20000, Loss: 0.00002503\n",
      "Epoch: 7600/20000, Loss: 0.00000198\n",
      "Epoch: 7610/20000, Loss: 0.00001304\n",
      "Epoch: 7620/20000, Loss: 0.00003187\n",
      "Epoch: 7630/20000, Loss: 0.00002922\n",
      "Epoch: 7640/20000, Loss: 0.00000196\n",
      "Epoch: 7650/20000, Loss: 0.00000633\n",
      "Epoch: 7660/20000, Loss: 0.00003059\n",
      "Epoch: 7670/20000, Loss: 0.00005623\n",
      "Epoch: 7680/20000, Loss: 0.00002622\n",
      "Epoch: 7690/20000, Loss: 0.00001049\n",
      "Epoch: 7700/20000, Loss: 0.00000809\n",
      "Epoch: 7710/20000, Loss: 0.00000250\n",
      "Epoch: 7720/20000, Loss: 0.00001139\n",
      "Epoch: 7730/20000, Loss: 0.00010535\n",
      "Epoch: 7740/20000, Loss: 0.00000336\n",
      "Epoch: 7750/20000, Loss: 0.00000601\n",
      "Epoch: 7760/20000, Loss: 0.00000700\n",
      "Epoch: 7770/20000, Loss: 0.00000683\n",
      "Epoch: 7780/20000, Loss: 0.00000238\n",
      "Epoch: 7790/20000, Loss: 0.00000533\n",
      "Epoch: 7800/20000, Loss: 0.00004091\n",
      "Epoch: 7810/20000, Loss: 0.00000343\n",
      "Epoch: 7820/20000, Loss: 0.00001547\n",
      "Epoch: 7830/20000, Loss: 0.00003004\n",
      "Epoch: 7840/20000, Loss: 0.00004098\n",
      "Epoch: 7850/20000, Loss: 0.00000353\n",
      "Epoch: 7860/20000, Loss: 0.00001082\n",
      "Epoch: 7870/20000, Loss: 0.00002241\n",
      "Epoch: 7880/20000, Loss: 0.00002982\n",
      "Epoch: 7890/20000, Loss: 0.00000851\n",
      "Epoch: 7900/20000, Loss: 0.00000096\n",
      "Epoch: 7910/20000, Loss: 0.00000195\n",
      "Epoch: 7920/20000, Loss: 0.00001828\n",
      "Epoch: 7930/20000, Loss: 0.00019163\n",
      "Epoch: 7940/20000, Loss: 0.00008499\n",
      "Epoch: 7950/20000, Loss: 0.00003257\n",
      "Epoch: 7960/20000, Loss: 0.00001272\n",
      "Epoch: 7970/20000, Loss: 0.00000452\n",
      "Epoch: 7980/20000, Loss: 0.00000299\n",
      "Epoch: 7990/20000, Loss: 0.00000162\n",
      "Epoch: 8000/20000, Loss: 0.00000285\n",
      "Epoch: 8010/20000, Loss: 0.00003322\n",
      "Epoch: 8020/20000, Loss: 0.00000672\n",
      "Epoch: 8030/20000, Loss: 0.00000381\n",
      "Epoch: 8040/20000, Loss: 0.00000561\n",
      "Epoch: 8050/20000, Loss: 0.00002076\n",
      "Epoch: 8060/20000, Loss: 0.00006761\n",
      "Epoch: 8070/20000, Loss: 0.00000256\n",
      "Epoch: 8080/20000, Loss: 0.00001581\n",
      "Epoch: 8090/20000, Loss: 0.00000094\n",
      "Epoch: 8100/20000, Loss: 0.00000533\n",
      "Epoch: 8110/20000, Loss: 0.00002045\n",
      "Epoch: 8120/20000, Loss: 0.00006525\n",
      "Epoch: 8130/20000, Loss: 0.00000273\n",
      "Epoch: 8140/20000, Loss: 0.00001710\n",
      "Epoch: 8150/20000, Loss: 0.00000260\n",
      "Epoch: 8160/20000, Loss: 0.00000382\n",
      "Epoch: 8170/20000, Loss: 0.00001876\n",
      "Epoch: 8180/20000, Loss: 0.00003287\n",
      "Epoch: 8190/20000, Loss: 0.00001618\n",
      "Epoch: 8200/20000, Loss: 0.00014910\n",
      "Epoch: 8210/20000, Loss: 0.00003229\n",
      "Epoch: 8220/20000, Loss: 0.00001389\n",
      "Epoch: 8230/20000, Loss: 0.00000642\n",
      "Epoch: 8240/20000, Loss: 0.00000205\n",
      "Epoch: 8250/20000, Loss: 0.00000231\n",
      "Epoch: 8260/20000, Loss: 0.00000145\n",
      "Epoch: 8270/20000, Loss: 0.00000170\n",
      "Epoch: 8280/20000, Loss: 0.00000106\n",
      "Epoch: 8290/20000, Loss: 0.00000159\n",
      "Epoch: 8300/20000, Loss: 0.00001628\n",
      "Epoch: 8310/20000, Loss: 0.00009291\n",
      "Epoch: 8320/20000, Loss: 0.00009135\n",
      "Epoch: 8330/20000, Loss: 0.00001582\n",
      "Epoch: 8340/20000, Loss: 0.00000334\n",
      "Epoch: 8350/20000, Loss: 0.00000434\n",
      "Epoch: 8360/20000, Loss: 0.00000326\n",
      "Epoch: 8370/20000, Loss: 0.00000912\n",
      "Epoch: 8380/20000, Loss: 0.00010469\n",
      "Epoch: 8390/20000, Loss: 0.00000311\n",
      "Epoch: 8400/20000, Loss: 0.00000184\n",
      "Epoch: 8410/20000, Loss: 0.00000419\n",
      "Epoch: 8420/20000, Loss: 0.00000528\n",
      "Epoch: 8430/20000, Loss: 0.00000244\n",
      "Epoch: 8440/20000, Loss: 0.00000130\n",
      "Epoch: 8450/20000, Loss: 0.00000083\n",
      "Epoch: 8460/20000, Loss: 0.00000129\n",
      "Epoch: 8470/20000, Loss: 0.00000913\n",
      "Epoch: 8480/20000, Loss: 0.00016183\n",
      "Epoch: 8490/20000, Loss: 0.00004994\n",
      "Epoch: 8500/20000, Loss: 0.00002529\n",
      "Epoch: 8510/20000, Loss: 0.00001400\n",
      "Epoch: 8520/20000, Loss: 0.00000596\n",
      "Epoch: 8530/20000, Loss: 0.00000239\n",
      "Epoch: 8540/20000, Loss: 0.00000121\n",
      "Epoch: 8550/20000, Loss: 0.00000158\n",
      "Epoch: 8560/20000, Loss: 0.00000421\n",
      "Epoch: 8570/20000, Loss: 0.00004464\n",
      "Epoch: 8580/20000, Loss: 0.00000186\n",
      "Epoch: 8590/20000, Loss: 0.00000145\n",
      "Epoch: 8600/20000, Loss: 0.00000170\n",
      "Epoch: 8610/20000, Loss: 0.00000952\n",
      "Epoch: 8620/20000, Loss: 0.00020856\n",
      "Epoch: 8630/20000, Loss: 0.00008814\n",
      "Epoch: 8640/20000, Loss: 0.00003888\n",
      "Epoch: 8650/20000, Loss: 0.00001003\n",
      "Epoch: 8660/20000, Loss: 0.00000356\n",
      "Epoch: 8670/20000, Loss: 0.00000169\n",
      "Epoch: 8680/20000, Loss: 0.00000137\n",
      "Epoch: 8690/20000, Loss: 0.00000101\n",
      "Epoch: 8700/20000, Loss: 0.00000078\n",
      "Epoch: 8710/20000, Loss: 0.00000145\n",
      "Epoch: 8720/20000, Loss: 0.00000150\n",
      "Epoch: 8730/20000, Loss: 0.00000161\n",
      "Epoch: 8740/20000, Loss: 0.00004962\n",
      "Epoch: 8750/20000, Loss: 0.00001279\n",
      "Epoch: 8760/20000, Loss: 0.00011483\n",
      "Epoch: 8770/20000, Loss: 0.00000884\n",
      "Epoch: 8780/20000, Loss: 0.00001626\n",
      "Epoch: 8790/20000, Loss: 0.00000911\n",
      "Epoch: 8800/20000, Loss: 0.00000141\n",
      "Epoch: 8810/20000, Loss: 0.00000304\n",
      "Epoch: 8820/20000, Loss: 0.00000266\n",
      "Epoch: 8830/20000, Loss: 0.00000724\n",
      "Epoch: 8840/20000, Loss: 0.00006547\n",
      "Epoch: 8850/20000, Loss: 0.00001308\n",
      "Epoch: 8860/20000, Loss: 0.00002363\n",
      "Epoch: 8870/20000, Loss: 0.00001131\n",
      "Epoch: 8880/20000, Loss: 0.00000088\n",
      "Epoch: 8890/20000, Loss: 0.00000373\n",
      "Epoch: 8900/20000, Loss: 0.00000188\n",
      "Epoch: 8910/20000, Loss: 0.00000250\n",
      "Epoch: 8920/20000, Loss: 0.00001882\n",
      "Epoch: 8930/20000, Loss: 0.00013719\n",
      "Epoch: 8940/20000, Loss: 0.00004478\n",
      "Epoch: 8950/20000, Loss: 0.00001546\n",
      "Epoch: 8960/20000, Loss: 0.00000370\n",
      "Epoch: 8970/20000, Loss: 0.00000103\n",
      "Epoch: 8980/20000, Loss: 0.00000346\n",
      "Epoch: 8990/20000, Loss: 0.00000096\n",
      "Epoch: 9000/20000, Loss: 0.00000165\n",
      "Epoch: 9010/20000, Loss: 0.00000598\n",
      "Epoch: 9020/20000, Loss: 0.00007120\n",
      "Epoch: 9030/20000, Loss: 0.00001486\n",
      "Epoch: 9040/20000, Loss: 0.00000345\n",
      "Epoch: 9050/20000, Loss: 0.00000492\n",
      "Epoch: 9060/20000, Loss: 0.00000911\n",
      "Epoch: 9070/20000, Loss: 0.00006107\n",
      "Epoch: 9080/20000, Loss: 0.00000391\n",
      "Epoch: 9090/20000, Loss: 0.00001746\n",
      "Epoch: 9100/20000, Loss: 0.00000147\n",
      "Epoch: 9110/20000, Loss: 0.00000611\n",
      "Epoch: 9120/20000, Loss: 0.00000941\n",
      "Epoch: 9130/20000, Loss: 0.00002793\n",
      "Epoch: 9140/20000, Loss: 0.00003739\n",
      "Epoch: 9150/20000, Loss: 0.00000168\n",
      "Epoch: 9160/20000, Loss: 0.00001144\n",
      "Epoch: 9170/20000, Loss: 0.00001808\n",
      "Epoch: 9180/20000, Loss: 0.00002135\n",
      "Epoch: 9190/20000, Loss: 0.00002084\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 9200/20000, Loss: 0.00002316\n",
      "Epoch: 9210/20000, Loss: 0.00003118\n",
      "Epoch: 9220/20000, Loss: 0.00003729\n",
      "Epoch: 9230/20000, Loss: 0.00000813\n",
      "Epoch: 9240/20000, Loss: 0.00000889\n",
      "Epoch: 9250/20000, Loss: 0.00000371\n",
      "Epoch: 9260/20000, Loss: 0.00000567\n",
      "Epoch: 9270/20000, Loss: 0.00001470\n",
      "Epoch: 9280/20000, Loss: 0.00002403\n",
      "Epoch: 9290/20000, Loss: 0.00015375\n",
      "Epoch: 9300/20000, Loss: 0.00003602\n",
      "Epoch: 9310/20000, Loss: 0.00001872\n",
      "Epoch: 9320/20000, Loss: 0.00000895\n",
      "Epoch: 9330/20000, Loss: 0.00000393\n",
      "Epoch: 9340/20000, Loss: 0.00000094\n",
      "Epoch: 9350/20000, Loss: 0.00000151\n",
      "Epoch: 9360/20000, Loss: 0.00000167\n",
      "Epoch: 9370/20000, Loss: 0.00000687\n",
      "Epoch: 9380/20000, Loss: 0.00006706\n",
      "Epoch: 9390/20000, Loss: 0.00000894\n",
      "Epoch: 9400/20000, Loss: 0.00000848\n",
      "Epoch: 9410/20000, Loss: 0.00000575\n",
      "Epoch: 9420/20000, Loss: 0.00000313\n",
      "Epoch: 9430/20000, Loss: 0.00000118\n",
      "Epoch: 9440/20000, Loss: 0.00001116\n",
      "Epoch: 9450/20000, Loss: 0.00018598\n",
      "Epoch: 9460/20000, Loss: 0.00006855\n",
      "Epoch: 9470/20000, Loss: 0.00003321\n",
      "Epoch: 9480/20000, Loss: 0.00001153\n",
      "Epoch: 9490/20000, Loss: 0.00000481\n",
      "Epoch: 9500/20000, Loss: 0.00000256\n",
      "Epoch: 9510/20000, Loss: 0.00000168\n",
      "Epoch: 9520/20000, Loss: 0.00000088\n",
      "Epoch: 9530/20000, Loss: 0.00000191\n",
      "Epoch: 9540/20000, Loss: 0.00001599\n",
      "Epoch: 9550/20000, Loss: 0.00005289\n",
      "Epoch: 9560/20000, Loss: 0.00002222\n",
      "Epoch: 9570/20000, Loss: 0.00000944\n",
      "Epoch: 9580/20000, Loss: 0.00001219\n",
      "Epoch: 9590/20000, Loss: 0.00006135\n",
      "Epoch: 9600/20000, Loss: 0.00000555\n",
      "Epoch: 9610/20000, Loss: 0.00001934\n",
      "Epoch: 9620/20000, Loss: 0.00000272\n",
      "Epoch: 9630/20000, Loss: 0.00000514\n",
      "Epoch: 9640/20000, Loss: 0.00000165\n",
      "Epoch: 9650/20000, Loss: 0.00000194\n",
      "Epoch: 9660/20000, Loss: 0.00001588\n",
      "Epoch: 9670/20000, Loss: 0.00015654\n",
      "Epoch: 9680/20000, Loss: 0.00005809\n",
      "Epoch: 9690/20000, Loss: 0.00002894\n",
      "Epoch: 9700/20000, Loss: 0.00001292\n",
      "Epoch: 9710/20000, Loss: 0.00000490\n",
      "Epoch: 9720/20000, Loss: 0.00000089\n",
      "Epoch: 9730/20000, Loss: 0.00000138\n",
      "Epoch: 9740/20000, Loss: 0.00000223\n",
      "Epoch: 9750/20000, Loss: 0.00001999\n",
      "Epoch: 9760/20000, Loss: 0.00004328\n",
      "Epoch: 9770/20000, Loss: 0.00003282\n",
      "Epoch: 9780/20000, Loss: 0.00000252\n",
      "Epoch: 9790/20000, Loss: 0.00000827\n",
      "Epoch: 9800/20000, Loss: 0.00002422\n",
      "Epoch: 9810/20000, Loss: 0.00003522\n",
      "Epoch: 9820/20000, Loss: 0.00000116\n",
      "Epoch: 9830/20000, Loss: 0.00000714\n",
      "Epoch: 9840/20000, Loss: 0.00001992\n",
      "Epoch: 9850/20000, Loss: 0.00003497\n",
      "Epoch: 9860/20000, Loss: 0.00000453\n",
      "Epoch: 9870/20000, Loss: 0.00000283\n",
      "Epoch: 9880/20000, Loss: 0.00001585\n",
      "Epoch: 9890/20000, Loss: 0.00006345\n",
      "Epoch: 9900/20000, Loss: 0.00000338\n",
      "Epoch: 9910/20000, Loss: 0.00002296\n",
      "Epoch: 9920/20000, Loss: 0.00000843\n",
      "Epoch: 9930/20000, Loss: 0.00002601\n",
      "Epoch: 9940/20000, Loss: 0.00002008\n",
      "Epoch: 9950/20000, Loss: 0.00000112\n",
      "Epoch: 9960/20000, Loss: 0.00000766\n",
      "Epoch: 9970/20000, Loss: 0.00003531\n",
      "Epoch: 9980/20000, Loss: 0.00003810\n",
      "Epoch: 9990/20000, Loss: 0.00002632\n",
      "Epoch: 10000/20000, Loss: 0.00000260\n",
      "Epoch: 10010/20000, Loss: 0.00001293\n",
      "Epoch: 10020/20000, Loss: 0.00006063\n",
      "Epoch: 10030/20000, Loss: 0.00002006\n",
      "Epoch: 10040/20000, Loss: 0.00000886\n",
      "Epoch: 10050/20000, Loss: 0.00000236\n",
      "Epoch: 10060/20000, Loss: 0.00000177\n",
      "Epoch: 10070/20000, Loss: 0.00000423\n",
      "Epoch: 10080/20000, Loss: 0.00002632\n",
      "Epoch: 10090/20000, Loss: 0.00007539\n",
      "Epoch: 10100/20000, Loss: 0.00001926\n",
      "Epoch: 10110/20000, Loss: 0.00000456\n",
      "Epoch: 10120/20000, Loss: 0.00000579\n",
      "Epoch: 10130/20000, Loss: 0.00000254\n",
      "Epoch: 10140/20000, Loss: 0.00000258\n",
      "Epoch: 10150/20000, Loss: 0.00000549\n",
      "Epoch: 10160/20000, Loss: 0.00002461\n",
      "Epoch: 10170/20000, Loss: 0.00003637\n",
      "Epoch: 10180/20000, Loss: 0.00007292\n",
      "Epoch: 10190/20000, Loss: 0.00002676\n",
      "Epoch: 10200/20000, Loss: 0.00002397\n",
      "Epoch: 10210/20000, Loss: 0.00000732\n",
      "Epoch: 10220/20000, Loss: 0.00000272\n",
      "Epoch: 10230/20000, Loss: 0.00000196\n",
      "Epoch: 10240/20000, Loss: 0.00000104\n",
      "Epoch: 10250/20000, Loss: 0.00000067\n",
      "Epoch: 10260/20000, Loss: 0.00000073\n",
      "Epoch: 10270/20000, Loss: 0.00000214\n",
      "Epoch: 10280/20000, Loss: 0.00002836\n",
      "Epoch: 10290/20000, Loss: 0.00013396\n",
      "Epoch: 10300/20000, Loss: 0.00004092\n",
      "Epoch: 10310/20000, Loss: 0.00000871\n",
      "Epoch: 10320/20000, Loss: 0.00000418\n",
      "Epoch: 10330/20000, Loss: 0.00000256\n",
      "Epoch: 10340/20000, Loss: 0.00000085\n",
      "Epoch: 10350/20000, Loss: 0.00000063\n",
      "Epoch: 10360/20000, Loss: 0.00000060\n",
      "Epoch: 10370/20000, Loss: 0.00000069\n",
      "Epoch: 10380/20000, Loss: 0.00000182\n",
      "Epoch: 10390/20000, Loss: 0.00001195\n",
      "Epoch: 10400/20000, Loss: 0.00009217\n",
      "Epoch: 10410/20000, Loss: 0.00005204\n",
      "Epoch: 10420/20000, Loss: 0.00002716\n",
      "Epoch: 10430/20000, Loss: 0.00001315\n",
      "Epoch: 10440/20000, Loss: 0.00000632\n",
      "Epoch: 10450/20000, Loss: 0.00000708\n",
      "Epoch: 10460/20000, Loss: 0.00003748\n",
      "Epoch: 10470/20000, Loss: 0.00004634\n",
      "Epoch: 10480/20000, Loss: 0.00001799\n",
      "Epoch: 10490/20000, Loss: 0.00000070\n",
      "Epoch: 10500/20000, Loss: 0.00000590\n",
      "Epoch: 10510/20000, Loss: 0.00000136\n",
      "Epoch: 10520/20000, Loss: 0.00000056\n",
      "Epoch: 10530/20000, Loss: 0.00000060\n",
      "Epoch: 10540/20000, Loss: 0.00000263\n",
      "Epoch: 10550/20000, Loss: 0.00010468\n",
      "Epoch: 10560/20000, Loss: 0.00003411\n",
      "Epoch: 10570/20000, Loss: 0.00008202\n",
      "Epoch: 10580/20000, Loss: 0.00003271\n",
      "Epoch: 10590/20000, Loss: 0.00009496\n",
      "Epoch: 10600/20000, Loss: 0.00497896\n",
      "Epoch: 10610/20000, Loss: 0.00462653\n",
      "Epoch: 10620/20000, Loss: 0.00117018\n",
      "Epoch: 10630/20000, Loss: 0.00041845\n",
      "Epoch: 10640/20000, Loss: 0.00022888\n",
      "Epoch: 10650/20000, Loss: 0.00012068\n",
      "Epoch: 10660/20000, Loss: 0.00007787\n",
      "Epoch: 10670/20000, Loss: 0.00005839\n",
      "Epoch: 10680/20000, Loss: 0.00004616\n",
      "Epoch: 10690/20000, Loss: 0.00003904\n",
      "Epoch: 10700/20000, Loss: 0.00003419\n",
      "Epoch: 10710/20000, Loss: 0.00003072\n",
      "Epoch: 10720/20000, Loss: 0.00002797\n",
      "Epoch: 10730/20000, Loss: 0.00002563\n",
      "Epoch: 10740/20000, Loss: 0.00002373\n",
      "Epoch: 10750/20000, Loss: 0.00002215\n",
      "Epoch: 10760/20000, Loss: 0.00002082\n",
      "Epoch: 10770/20000, Loss: 0.00001969\n",
      "Epoch: 10780/20000, Loss: 0.00001871\n",
      "Epoch: 10790/20000, Loss: 0.00001785\n",
      "Epoch: 10800/20000, Loss: 0.00001708\n",
      "Epoch: 10810/20000, Loss: 0.00001637\n",
      "Epoch: 10820/20000, Loss: 0.00001573\n",
      "Epoch: 10830/20000, Loss: 0.00001513\n",
      "Epoch: 10840/20000, Loss: 0.00001459\n",
      "Epoch: 10850/20000, Loss: 0.00001408\n",
      "Epoch: 10860/20000, Loss: 0.00001370\n",
      "Epoch: 10870/20000, Loss: 0.00001318\n",
      "Epoch: 10880/20000, Loss: 0.00001287\n",
      "Epoch: 10890/20000, Loss: 0.00001238\n",
      "Epoch: 10900/20000, Loss: 0.00001193\n",
      "Epoch: 10910/20000, Loss: 0.00001150\n",
      "Epoch: 10920/20000, Loss: 0.00001108\n",
      "Epoch: 10930/20000, Loss: 0.00001202\n",
      "Epoch: 10940/20000, Loss: 0.00001097\n",
      "Epoch: 10950/20000, Loss: 0.00001081\n",
      "Epoch: 10960/20000, Loss: 0.00001245\n",
      "Epoch: 10970/20000, Loss: 0.00001011\n",
      "Epoch: 10980/20000, Loss: 0.00001155\n",
      "Epoch: 10990/20000, Loss: 0.00001315\n",
      "Epoch: 11000/20000, Loss: 0.00001014\n",
      "Epoch: 11010/20000, Loss: 0.00000906\n",
      "Epoch: 11020/20000, Loss: 0.00000873\n",
      "Epoch: 11030/20000, Loss: 0.00000845\n",
      "Epoch: 11040/20000, Loss: 0.00000819\n",
      "Epoch: 11050/20000, Loss: 0.00000799\n",
      "Epoch: 11060/20000, Loss: 0.00000750\n",
      "Epoch: 11070/20000, Loss: 0.00000692\n",
      "Epoch: 11080/20000, Loss: 0.00000638\n",
      "Epoch: 11090/20000, Loss: 0.00000759\n",
      "Epoch: 11100/20000, Loss: 0.00001274\n",
      "Epoch: 11110/20000, Loss: 0.00000728\n",
      "Epoch: 11120/20000, Loss: 0.00001154\n",
      "Epoch: 11130/20000, Loss: 0.00000700\n",
      "Epoch: 11140/20000, Loss: 0.00001128\n",
      "Epoch: 11150/20000, Loss: 0.00000661\n",
      "Epoch: 11160/20000, Loss: 0.00001054\n",
      "Epoch: 11170/20000, Loss: 0.00000586\n",
      "Epoch: 11180/20000, Loss: 0.00000471\n",
      "Epoch: 11190/20000, Loss: 0.00000427\n",
      "Epoch: 11200/20000, Loss: 0.00000595\n",
      "Epoch: 11210/20000, Loss: 0.00000821\n",
      "Epoch: 11220/20000, Loss: 0.00001578\n",
      "Epoch: 11230/20000, Loss: 0.00001187\n",
      "Epoch: 11240/20000, Loss: 0.00000883\n",
      "Epoch: 11250/20000, Loss: 0.00000649\n",
      "Epoch: 11260/20000, Loss: 0.00000627\n",
      "Epoch: 11270/20000, Loss: 0.00000584\n",
      "Epoch: 11280/20000, Loss: 0.00000583\n",
      "Epoch: 11290/20000, Loss: 0.00000601\n",
      "Epoch: 11300/20000, Loss: 0.00000590\n",
      "Epoch: 11310/20000, Loss: 0.00000563\n",
      "Epoch: 11320/20000, Loss: 0.00000542\n",
      "Epoch: 11330/20000, Loss: 0.00000530\n",
      "Epoch: 11340/20000, Loss: 0.00000546\n",
      "Epoch: 11350/20000, Loss: 0.00000560\n",
      "Epoch: 11360/20000, Loss: 0.00000525\n",
      "Epoch: 11370/20000, Loss: 0.00000585\n",
      "Epoch: 11380/20000, Loss: 0.00000558\n",
      "Epoch: 11390/20000, Loss: 0.00000524\n",
      "Epoch: 11400/20000, Loss: 0.00000494\n",
      "Epoch: 11410/20000, Loss: 0.00000577\n",
      "Epoch: 11420/20000, Loss: 0.00000562\n",
      "Epoch: 11430/20000, Loss: 0.00000668\n",
      "Epoch: 11440/20000, Loss: 0.00000503\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 11450/20000, Loss: 0.00000494\n",
      "Epoch: 11460/20000, Loss: 0.00000481\n",
      "Epoch: 11470/20000, Loss: 0.00000493\n",
      "Epoch: 11480/20000, Loss: 0.00000497\n",
      "Epoch: 11490/20000, Loss: 0.00000491\n",
      "Epoch: 11500/20000, Loss: 0.00000466\n",
      "Epoch: 11510/20000, Loss: 0.00000515\n",
      "Epoch: 11520/20000, Loss: 0.00000703\n",
      "Epoch: 11530/20000, Loss: 0.00000897\n",
      "Epoch: 11540/20000, Loss: 0.00000452\n",
      "Epoch: 11550/20000, Loss: 0.00000552\n",
      "Epoch: 11560/20000, Loss: 0.00000944\n",
      "Epoch: 11570/20000, Loss: 0.00004683\n",
      "Epoch: 11580/20000, Loss: 0.00000939\n",
      "Epoch: 11590/20000, Loss: 0.00001654\n",
      "Epoch: 11600/20000, Loss: 0.00000836\n",
      "Epoch: 11610/20000, Loss: 0.00000687\n",
      "Epoch: 11620/20000, Loss: 0.00000448\n",
      "Epoch: 11630/20000, Loss: 0.00000432\n",
      "Epoch: 11640/20000, Loss: 0.00001321\n",
      "Epoch: 11650/20000, Loss: 0.00018340\n",
      "Epoch: 11660/20000, Loss: 0.00003683\n",
      "Epoch: 11670/20000, Loss: 0.00000478\n",
      "Epoch: 11680/20000, Loss: 0.00000970\n",
      "Epoch: 11690/20000, Loss: 0.00000709\n",
      "Epoch: 11700/20000, Loss: 0.00000527\n",
      "Epoch: 11710/20000, Loss: 0.00000453\n",
      "Epoch: 11720/20000, Loss: 0.00000416\n",
      "Epoch: 11730/20000, Loss: 0.00000412\n",
      "Epoch: 11740/20000, Loss: 0.00000403\n",
      "Epoch: 11750/20000, Loss: 0.00000451\n",
      "Epoch: 11760/20000, Loss: 0.00001544\n",
      "Epoch: 11770/20000, Loss: 0.00010983\n",
      "Epoch: 11780/20000, Loss: 0.00004010\n",
      "Epoch: 11790/20000, Loss: 0.00001497\n",
      "Epoch: 11800/20000, Loss: 0.00000627\n",
      "Epoch: 11810/20000, Loss: 0.00000404\n",
      "Epoch: 11820/20000, Loss: 0.00000580\n",
      "Epoch: 11830/20000, Loss: 0.00000822\n",
      "Epoch: 11840/20000, Loss: 0.00001541\n",
      "Epoch: 11850/20000, Loss: 0.00002624\n",
      "Epoch: 11860/20000, Loss: 0.00001110\n",
      "Epoch: 11870/20000, Loss: 0.00000375\n",
      "Epoch: 11880/20000, Loss: 0.00000381\n",
      "Epoch: 11890/20000, Loss: 0.00002705\n",
      "Epoch: 11900/20000, Loss: 0.00009942\n",
      "Epoch: 11910/20000, Loss: 0.00001812\n",
      "Epoch: 11920/20000, Loss: 0.00000623\n",
      "Epoch: 11930/20000, Loss: 0.00001034\n",
      "Epoch: 11940/20000, Loss: 0.00000820\n",
      "Epoch: 11950/20000, Loss: 0.00000543\n",
      "Epoch: 11960/20000, Loss: 0.00000439\n",
      "Epoch: 11970/20000, Loss: 0.00000377\n",
      "Epoch: 11980/20000, Loss: 0.00000585\n",
      "Epoch: 11990/20000, Loss: 0.00001332\n",
      "Epoch: 12000/20000, Loss: 0.00001186\n",
      "Epoch: 12010/20000, Loss: 0.00000929\n",
      "Epoch: 12020/20000, Loss: 0.00001143\n",
      "Epoch: 12030/20000, Loss: 0.00004184\n",
      "Epoch: 12040/20000, Loss: 0.00000749\n",
      "Epoch: 12050/20000, Loss: 0.00000585\n",
      "Epoch: 12060/20000, Loss: 0.00001467\n",
      "Epoch: 12070/20000, Loss: 0.00003914\n",
      "Epoch: 12080/20000, Loss: 0.00000858\n",
      "Epoch: 12090/20000, Loss: 0.00001100\n",
      "Epoch: 12100/20000, Loss: 0.00002297\n",
      "Epoch: 12110/20000, Loss: 0.00000769\n",
      "Epoch: 12120/20000, Loss: 0.00001935\n",
      "Epoch: 12130/20000, Loss: 0.00003230\n",
      "Epoch: 12140/20000, Loss: 0.00000667\n",
      "Epoch: 12150/20000, Loss: 0.00000323\n",
      "Epoch: 12160/20000, Loss: 0.00004113\n",
      "Epoch: 12170/20000, Loss: 0.00004391\n",
      "Epoch: 12180/20000, Loss: 0.00001597\n",
      "Epoch: 12190/20000, Loss: 0.00001351\n",
      "Epoch: 12200/20000, Loss: 0.00001383\n",
      "Epoch: 12210/20000, Loss: 0.00001479\n",
      "Epoch: 12220/20000, Loss: 0.00001733\n",
      "Epoch: 12230/20000, Loss: 0.00001166\n",
      "Epoch: 12240/20000, Loss: 0.00000857\n",
      "Epoch: 12250/20000, Loss: 0.00002543\n",
      "Epoch: 12260/20000, Loss: 0.00000501\n",
      "Epoch: 12270/20000, Loss: 0.00000824\n",
      "Epoch: 12280/20000, Loss: 0.00004302\n",
      "Epoch: 12290/20000, Loss: 0.00001423\n",
      "Epoch: 12300/20000, Loss: 0.00000699\n",
      "Epoch: 12310/20000, Loss: 0.00001751\n",
      "Epoch: 12320/20000, Loss: 0.00002288\n",
      "Epoch: 12330/20000, Loss: 0.00000966\n",
      "Epoch: 12340/20000, Loss: 0.00001534\n",
      "Epoch: 12350/20000, Loss: 0.00002136\n",
      "Epoch: 12360/20000, Loss: 0.00002972\n",
      "Epoch: 12370/20000, Loss: 0.00000736\n",
      "Epoch: 12380/20000, Loss: 0.00000257\n",
      "Epoch: 12390/20000, Loss: 0.00000360\n",
      "Epoch: 12400/20000, Loss: 0.00006627\n",
      "Epoch: 12410/20000, Loss: 0.00007534\n",
      "Epoch: 12420/20000, Loss: 0.00000584\n",
      "Epoch: 12430/20000, Loss: 0.00001767\n",
      "Epoch: 12440/20000, Loss: 0.00001153\n",
      "Epoch: 12450/20000, Loss: 0.00000565\n",
      "Epoch: 12460/20000, Loss: 0.00001397\n",
      "Epoch: 12470/20000, Loss: 0.00002891\n",
      "Epoch: 12480/20000, Loss: 0.00000887\n",
      "Epoch: 12490/20000, Loss: 0.00003586\n",
      "Epoch: 12500/20000, Loss: 0.00000327\n",
      "Epoch: 12510/20000, Loss: 0.00005786\n",
      "Epoch: 12520/20000, Loss: 0.00001556\n",
      "Epoch: 12530/20000, Loss: 0.00001159\n",
      "Epoch: 12540/20000, Loss: 0.00002615\n",
      "Epoch: 12550/20000, Loss: 0.00000547\n",
      "Epoch: 12560/20000, Loss: 0.00001653\n",
      "Epoch: 12570/20000, Loss: 0.00000586\n",
      "Epoch: 12580/20000, Loss: 0.00001180\n",
      "Epoch: 12590/20000, Loss: 0.00001174\n",
      "Epoch: 12600/20000, Loss: 0.00001819\n",
      "Epoch: 12610/20000, Loss: 0.00002491\n",
      "Epoch: 12620/20000, Loss: 0.00001701\n",
      "Epoch: 12630/20000, Loss: 0.00000434\n",
      "Epoch: 12640/20000, Loss: 0.00000296\n",
      "Epoch: 12650/20000, Loss: 0.00000904\n",
      "Epoch: 12660/20000, Loss: 0.00002850\n",
      "Epoch: 12670/20000, Loss: 0.00016495\n",
      "Epoch: 12680/20000, Loss: 0.00007284\n",
      "Epoch: 12690/20000, Loss: 0.00002159\n",
      "Epoch: 12700/20000, Loss: 0.00001537\n",
      "Epoch: 12710/20000, Loss: 0.00000640\n",
      "Epoch: 12720/20000, Loss: 0.00000275\n",
      "Epoch: 12730/20000, Loss: 0.00000441\n",
      "Epoch: 12740/20000, Loss: 0.00000334\n",
      "Epoch: 12750/20000, Loss: 0.00000475\n",
      "Epoch: 12760/20000, Loss: 0.00003225\n",
      "Epoch: 12770/20000, Loss: 0.00000584\n",
      "Epoch: 12780/20000, Loss: 0.00000549\n",
      "Epoch: 12790/20000, Loss: 0.00003874\n",
      "Epoch: 12800/20000, Loss: 0.00002951\n",
      "Epoch: 12810/20000, Loss: 0.00000704\n",
      "Epoch: 12820/20000, Loss: 0.00000771\n",
      "Epoch: 12830/20000, Loss: 0.00002248\n",
      "Epoch: 12840/20000, Loss: 0.00003979\n",
      "Epoch: 12850/20000, Loss: 0.00000715\n",
      "Epoch: 12860/20000, Loss: 0.00000897\n",
      "Epoch: 12870/20000, Loss: 0.00004142\n",
      "Epoch: 12880/20000, Loss: 0.00001124\n",
      "Epoch: 12890/20000, Loss: 0.00000847\n",
      "Epoch: 12900/20000, Loss: 0.00003062\n",
      "Epoch: 12910/20000, Loss: 0.00001014\n",
      "Epoch: 12920/20000, Loss: 0.00001617\n",
      "Epoch: 12930/20000, Loss: 0.00001160\n",
      "Epoch: 12940/20000, Loss: 0.00007886\n",
      "Epoch: 12950/20000, Loss: 0.00001783\n",
      "Epoch: 12960/20000, Loss: 0.00001372\n",
      "Epoch: 12970/20000, Loss: 0.00000830\n",
      "Epoch: 12980/20000, Loss: 0.00000437\n",
      "Epoch: 12990/20000, Loss: 0.00000298\n",
      "Epoch: 13000/20000, Loss: 0.00000695\n",
      "Epoch: 13010/20000, Loss: 0.00003734\n",
      "Epoch: 13020/20000, Loss: 0.00006271\n",
      "Epoch: 13030/20000, Loss: 0.00002719\n",
      "Epoch: 13040/20000, Loss: 0.00000320\n",
      "Epoch: 13050/20000, Loss: 0.00001095\n",
      "Epoch: 13060/20000, Loss: 0.00000844\n",
      "Epoch: 13070/20000, Loss: 0.00000784\n",
      "Epoch: 13080/20000, Loss: 0.00000396\n",
      "Epoch: 13090/20000, Loss: 0.00000763\n",
      "Epoch: 13100/20000, Loss: 0.00005792\n",
      "Epoch: 13110/20000, Loss: 0.00002374\n",
      "Epoch: 13120/20000, Loss: 0.00000809\n",
      "Epoch: 13130/20000, Loss: 0.00000233\n",
      "Epoch: 13140/20000, Loss: 0.00000268\n",
      "Epoch: 13150/20000, Loss: 0.00000616\n",
      "Epoch: 13160/20000, Loss: 0.00012642\n",
      "Epoch: 13170/20000, Loss: 0.00003512\n",
      "Epoch: 13180/20000, Loss: 0.00001934\n",
      "Epoch: 13190/20000, Loss: 0.00000917\n",
      "Epoch: 13200/20000, Loss: 0.00000563\n",
      "Epoch: 13210/20000, Loss: 0.00000293\n",
      "Epoch: 13220/20000, Loss: 0.00000882\n",
      "Epoch: 13230/20000, Loss: 0.00002346\n",
      "Epoch: 13240/20000, Loss: 0.00000508\n",
      "Epoch: 13250/20000, Loss: 0.00000271\n",
      "Epoch: 13260/20000, Loss: 0.00000220\n",
      "Epoch: 13270/20000, Loss: 0.00000953\n",
      "Epoch: 13280/20000, Loss: 0.00009461\n",
      "Epoch: 13290/20000, Loss: 0.00002716\n",
      "Epoch: 13300/20000, Loss: 0.00002034\n",
      "Epoch: 13310/20000, Loss: 0.00000781\n",
      "Epoch: 13320/20000, Loss: 0.00000433\n",
      "Epoch: 13330/20000, Loss: 0.00000334\n",
      "Epoch: 13340/20000, Loss: 0.00000243\n",
      "Epoch: 13350/20000, Loss: 0.00000322\n",
      "Epoch: 13360/20000, Loss: 0.00003693\n",
      "Epoch: 13370/20000, Loss: 0.00004556\n",
      "Epoch: 13380/20000, Loss: 0.00000520\n",
      "Epoch: 13390/20000, Loss: 0.00000787\n",
      "Epoch: 13400/20000, Loss: 0.00000605\n",
      "Epoch: 13410/20000, Loss: 0.00000439\n",
      "Epoch: 13420/20000, Loss: 0.00000563\n",
      "Epoch: 13430/20000, Loss: 0.00000210\n",
      "Epoch: 13440/20000, Loss: 0.00000265\n",
      "Epoch: 13450/20000, Loss: 0.00000662\n",
      "Epoch: 13460/20000, Loss: 0.00003539\n",
      "Epoch: 13470/20000, Loss: 0.00000569\n",
      "Epoch: 13480/20000, Loss: 0.00000821\n",
      "Epoch: 13490/20000, Loss: 0.00001667\n",
      "Epoch: 13500/20000, Loss: 0.00004419\n",
      "Epoch: 13510/20000, Loss: 0.00000558\n",
      "Epoch: 13520/20000, Loss: 0.00003527\n",
      "Epoch: 13530/20000, Loss: 0.00000248\n",
      "Epoch: 13540/20000, Loss: 0.00001184\n",
      "Epoch: 13550/20000, Loss: 0.00002036\n",
      "Epoch: 13560/20000, Loss: 0.00001485\n",
      "Epoch: 13570/20000, Loss: 0.00005413\n",
      "Epoch: 13580/20000, Loss: 0.00003606\n",
      "Epoch: 13590/20000, Loss: 0.00001717\n",
      "Epoch: 13600/20000, Loss: 0.00000572\n",
      "Epoch: 13610/20000, Loss: 0.00000594\n",
      "Epoch: 13620/20000, Loss: 0.00001485\n",
      "Epoch: 13630/20000, Loss: 0.00005093\n",
      "Epoch: 13640/20000, Loss: 0.00000431\n",
      "Epoch: 13650/20000, Loss: 0.00001824\n",
      "Epoch: 13660/20000, Loss: 0.00001346\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 13670/20000, Loss: 0.00000327\n",
      "Epoch: 13680/20000, Loss: 0.00002131\n",
      "Epoch: 13690/20000, Loss: 0.00004128\n",
      "Epoch: 13700/20000, Loss: 0.00002335\n",
      "Epoch: 13710/20000, Loss: 0.00002387\n",
      "Epoch: 13720/20000, Loss: 0.00001679\n",
      "Epoch: 13730/20000, Loss: 0.00000386\n",
      "Epoch: 13740/20000, Loss: 0.00001010\n",
      "Epoch: 13750/20000, Loss: 0.00005024\n",
      "Epoch: 13760/20000, Loss: 0.00000920\n",
      "Epoch: 13770/20000, Loss: 0.00001406\n",
      "Epoch: 13780/20000, Loss: 0.00001067\n",
      "Epoch: 13790/20000, Loss: 0.00000347\n",
      "Epoch: 13800/20000, Loss: 0.00000365\n",
      "Epoch: 13810/20000, Loss: 0.00006154\n",
      "Epoch: 13820/20000, Loss: 0.00006280\n",
      "Epoch: 13830/20000, Loss: 0.00005379\n",
      "Epoch: 13840/20000, Loss: 0.00000816\n",
      "Epoch: 13850/20000, Loss: 0.00000996\n",
      "Epoch: 13860/20000, Loss: 0.00000403\n",
      "Epoch: 13870/20000, Loss: 0.00000840\n",
      "Epoch: 13880/20000, Loss: 0.00001447\n",
      "Epoch: 13890/20000, Loss: 0.00004307\n",
      "Epoch: 13900/20000, Loss: 0.00000478\n",
      "Epoch: 13910/20000, Loss: 0.00001549\n",
      "Epoch: 13920/20000, Loss: 0.00000866\n",
      "Epoch: 13930/20000, Loss: 0.00000417\n",
      "Epoch: 13940/20000, Loss: 0.00000956\n",
      "Epoch: 13950/20000, Loss: 0.00006750\n",
      "Epoch: 13960/20000, Loss: 0.00000431\n",
      "Epoch: 13970/20000, Loss: 0.00002172\n",
      "Epoch: 13980/20000, Loss: 0.00000366\n",
      "Epoch: 13990/20000, Loss: 0.00000540\n",
      "Epoch: 14000/20000, Loss: 0.00001776\n",
      "Epoch: 14010/20000, Loss: 0.00002557\n",
      "Epoch: 14020/20000, Loss: 0.00002293\n",
      "Epoch: 14030/20000, Loss: 0.00000236\n",
      "Epoch: 14040/20000, Loss: 0.00000742\n",
      "Epoch: 14050/20000, Loss: 0.00006063\n",
      "Epoch: 14060/20000, Loss: 0.00001251\n",
      "Epoch: 14070/20000, Loss: 0.00000692\n",
      "Epoch: 14080/20000, Loss: 0.00001463\n",
      "Epoch: 14090/20000, Loss: 0.00002016\n",
      "Epoch: 14100/20000, Loss: 0.00001486\n",
      "Epoch: 14110/20000, Loss: 0.00000425\n",
      "Epoch: 14120/20000, Loss: 0.00000201\n",
      "Epoch: 14130/20000, Loss: 0.00000241\n",
      "Epoch: 14140/20000, Loss: 0.00001587\n",
      "Epoch: 14150/20000, Loss: 0.00018922\n",
      "Epoch: 14160/20000, Loss: 0.00005378\n",
      "Epoch: 14170/20000, Loss: 0.00001492\n",
      "Epoch: 14180/20000, Loss: 0.00001083\n",
      "Epoch: 14190/20000, Loss: 0.00000249\n",
      "Epoch: 14200/20000, Loss: 0.00000389\n",
      "Epoch: 14210/20000, Loss: 0.00000337\n",
      "Epoch: 14220/20000, Loss: 0.00000341\n",
      "Epoch: 14230/20000, Loss: 0.00001632\n",
      "Epoch: 14240/20000, Loss: 0.00002580\n",
      "Epoch: 14250/20000, Loss: 0.00000945\n",
      "Epoch: 14260/20000, Loss: 0.00000953\n",
      "Epoch: 14270/20000, Loss: 0.00000197\n",
      "Epoch: 14280/20000, Loss: 0.00000299\n",
      "Epoch: 14290/20000, Loss: 0.00001828\n",
      "Epoch: 14300/20000, Loss: 0.00005903\n",
      "Epoch: 14310/20000, Loss: 0.00007101\n",
      "Epoch: 14320/20000, Loss: 0.00002446\n",
      "Epoch: 14330/20000, Loss: 0.00000255\n",
      "Epoch: 14340/20000, Loss: 0.00000475\n",
      "Epoch: 14350/20000, Loss: 0.00000471\n",
      "Epoch: 14360/20000, Loss: 0.00001300\n",
      "Epoch: 14370/20000, Loss: 0.00009060\n",
      "Epoch: 14380/20000, Loss: 0.00000882\n",
      "Epoch: 14390/20000, Loss: 0.00000954\n",
      "Epoch: 14400/20000, Loss: 0.00001467\n",
      "Epoch: 14410/20000, Loss: 0.00000271\n",
      "Epoch: 14420/20000, Loss: 0.00000637\n",
      "Epoch: 14430/20000, Loss: 0.00001106\n",
      "Epoch: 14440/20000, Loss: 0.00002725\n",
      "Epoch: 14450/20000, Loss: 0.00002150\n",
      "Epoch: 14460/20000, Loss: 0.00000726\n",
      "Epoch: 14470/20000, Loss: 0.00000180\n",
      "Epoch: 14480/20000, Loss: 0.00000596\n",
      "Epoch: 14490/20000, Loss: 0.00010031\n",
      "Epoch: 14500/20000, Loss: 0.00005209\n",
      "Epoch: 14510/20000, Loss: 0.00005644\n",
      "Epoch: 14520/20000, Loss: 0.00001821\n",
      "Epoch: 14530/20000, Loss: 0.00000337\n",
      "Epoch: 14540/20000, Loss: 0.00000525\n",
      "Epoch: 14550/20000, Loss: 0.00000259\n",
      "Epoch: 14560/20000, Loss: 0.00000186\n",
      "Epoch: 14570/20000, Loss: 0.00000331\n",
      "Epoch: 14580/20000, Loss: 0.00010170\n",
      "Epoch: 14590/20000, Loss: 0.00004039\n",
      "Epoch: 14600/20000, Loss: 0.00001267\n",
      "Epoch: 14610/20000, Loss: 0.00001855\n",
      "Epoch: 14620/20000, Loss: 0.00000587\n",
      "Epoch: 14630/20000, Loss: 0.00000495\n",
      "Epoch: 14640/20000, Loss: 0.00000226\n",
      "Epoch: 14650/20000, Loss: 0.00000182\n",
      "Epoch: 14660/20000, Loss: 0.00000188\n",
      "Epoch: 14670/20000, Loss: 0.00000170\n",
      "Epoch: 14680/20000, Loss: 0.00000166\n",
      "Epoch: 14690/20000, Loss: 0.00000166\n",
      "Epoch: 14700/20000, Loss: 0.00000308\n",
      "Epoch: 14710/20000, Loss: 0.00008670\n",
      "Epoch: 14720/20000, Loss: 0.00004810\n",
      "Epoch: 14730/20000, Loss: 0.00001881\n",
      "Epoch: 14740/20000, Loss: 0.00000351\n",
      "Epoch: 14750/20000, Loss: 0.00000728\n",
      "Epoch: 14760/20000, Loss: 0.00000334\n",
      "Epoch: 14770/20000, Loss: 0.00000222\n",
      "Epoch: 14780/20000, Loss: 0.00000186\n",
      "Epoch: 14790/20000, Loss: 0.00000167\n",
      "Epoch: 14800/20000, Loss: 0.00000192\n",
      "Epoch: 14810/20000, Loss: 0.00000239\n",
      "Epoch: 14820/20000, Loss: 0.00005384\n",
      "Epoch: 14830/20000, Loss: 0.00003975\n",
      "Epoch: 14840/20000, Loss: 0.00003129\n",
      "Epoch: 14850/20000, Loss: 0.00000603\n",
      "Epoch: 14860/20000, Loss: 0.00000383\n",
      "Epoch: 14870/20000, Loss: 0.00000381\n",
      "Epoch: 14880/20000, Loss: 0.00000233\n",
      "Epoch: 14890/20000, Loss: 0.00000189\n",
      "Epoch: 14900/20000, Loss: 0.00000171\n",
      "Epoch: 14910/20000, Loss: 0.00000208\n",
      "Epoch: 14920/20000, Loss: 0.00000185\n",
      "Epoch: 14930/20000, Loss: 0.00000394\n",
      "Epoch: 14940/20000, Loss: 0.00012136\n",
      "Epoch: 14950/20000, Loss: 0.00007218\n",
      "Epoch: 14960/20000, Loss: 0.00001475\n",
      "Epoch: 14970/20000, Loss: 0.00000640\n",
      "Epoch: 14980/20000, Loss: 0.00000794\n",
      "Epoch: 14990/20000, Loss: 0.00000303\n",
      "Epoch: 15000/20000, Loss: 0.00000193\n",
      "Epoch: 15010/20000, Loss: 0.00000232\n",
      "Epoch: 15020/20000, Loss: 0.00000367\n",
      "Epoch: 15030/20000, Loss: 0.00002792\n",
      "Epoch: 15040/20000, Loss: 0.00005919\n",
      "Epoch: 15050/20000, Loss: 0.00003485\n",
      "Epoch: 15060/20000, Loss: 0.00000571\n",
      "Epoch: 15070/20000, Loss: 0.00000568\n",
      "Epoch: 15080/20000, Loss: 0.00000377\n",
      "Epoch: 15090/20000, Loss: 0.00000563\n",
      "Epoch: 15100/20000, Loss: 0.00001131\n",
      "Epoch: 15110/20000, Loss: 0.00003366\n",
      "Epoch: 15120/20000, Loss: 0.00001874\n",
      "Epoch: 15130/20000, Loss: 0.00001543\n",
      "Epoch: 15140/20000, Loss: 0.00001080\n",
      "Epoch: 15150/20000, Loss: 0.00002124\n",
      "Epoch: 15160/20000, Loss: 0.00002795\n",
      "Epoch: 15170/20000, Loss: 0.00000174\n",
      "Epoch: 15180/20000, Loss: 0.00000850\n",
      "Epoch: 15190/20000, Loss: 0.00003453\n",
      "Epoch: 15200/20000, Loss: 0.00007018\n",
      "Epoch: 15210/20000, Loss: 0.00003288\n",
      "Epoch: 15220/20000, Loss: 0.00001584\n",
      "Epoch: 15230/20000, Loss: 0.00000488\n",
      "Epoch: 15240/20000, Loss: 0.00000531\n",
      "Epoch: 15250/20000, Loss: 0.00002817\n",
      "Epoch: 15260/20000, Loss: 0.00001448\n",
      "Epoch: 15270/20000, Loss: 0.00000856\n",
      "Epoch: 15280/20000, Loss: 0.00001293\n",
      "Epoch: 15290/20000, Loss: 0.00001211\n",
      "Epoch: 15300/20000, Loss: 0.00001885\n",
      "Epoch: 15310/20000, Loss: 0.00001620\n",
      "Epoch: 15320/20000, Loss: 0.00002185\n",
      "Epoch: 15330/20000, Loss: 0.00002186\n",
      "Epoch: 15340/20000, Loss: 0.00002307\n",
      "Epoch: 15350/20000, Loss: 0.00002650\n",
      "Epoch: 15360/20000, Loss: 0.00001045\n",
      "Epoch: 15370/20000, Loss: 0.00000373\n",
      "Epoch: 15380/20000, Loss: 0.00000175\n",
      "Epoch: 15390/20000, Loss: 0.00000611\n",
      "Epoch: 15400/20000, Loss: 0.00009559\n",
      "Epoch: 15410/20000, Loss: 0.00005960\n",
      "Epoch: 15420/20000, Loss: 0.00002445\n",
      "Epoch: 15430/20000, Loss: 0.00000569\n",
      "Epoch: 15440/20000, Loss: 0.00000258\n",
      "Epoch: 15450/20000, Loss: 0.00000313\n",
      "Epoch: 15460/20000, Loss: 0.00000258\n",
      "Epoch: 15470/20000, Loss: 0.00000522\n",
      "Epoch: 15480/20000, Loss: 0.00006166\n",
      "Epoch: 15490/20000, Loss: 0.00000868\n",
      "Epoch: 15500/20000, Loss: 0.00002445\n",
      "Epoch: 15510/20000, Loss: 0.00001741\n",
      "Epoch: 15520/20000, Loss: 0.00000431\n",
      "Epoch: 15530/20000, Loss: 0.00000349\n",
      "Epoch: 15540/20000, Loss: 0.00000196\n",
      "Epoch: 15550/20000, Loss: 0.00000263\n",
      "Epoch: 15560/20000, Loss: 0.00000960\n",
      "Epoch: 15570/20000, Loss: 0.00008971\n",
      "Epoch: 15580/20000, Loss: 0.00004156\n",
      "Epoch: 15590/20000, Loss: 0.00003028\n",
      "Epoch: 15600/20000, Loss: 0.00003251\n",
      "Epoch: 15610/20000, Loss: 0.00001206\n",
      "Epoch: 15620/20000, Loss: 0.00000500\n",
      "Epoch: 15630/20000, Loss: 0.00000780\n",
      "Epoch: 15640/20000, Loss: 0.00003309\n",
      "Epoch: 15650/20000, Loss: 0.00002934\n",
      "Epoch: 15660/20000, Loss: 0.00001433\n",
      "Epoch: 15670/20000, Loss: 0.00000468\n",
      "Epoch: 15680/20000, Loss: 0.00000199\n",
      "Epoch: 15690/20000, Loss: 0.00000623\n",
      "Epoch: 15700/20000, Loss: 0.00003432\n",
      "Epoch: 15710/20000, Loss: 0.00003560\n",
      "Epoch: 15720/20000, Loss: 0.00001572\n",
      "Epoch: 15730/20000, Loss: 0.00000956\n",
      "Epoch: 15740/20000, Loss: 0.00000311\n",
      "Epoch: 15750/20000, Loss: 0.00000576\n",
      "Epoch: 15760/20000, Loss: 0.00003336\n",
      "Epoch: 15770/20000, Loss: 0.00002029\n",
      "Epoch: 15780/20000, Loss: 0.00002749\n",
      "Epoch: 15790/20000, Loss: 0.00001205\n",
      "Epoch: 15800/20000, Loss: 0.00000499\n",
      "Epoch: 15810/20000, Loss: 0.00002071\n",
      "Epoch: 15820/20000, Loss: 0.00008073\n",
      "Epoch: 15830/20000, Loss: 0.00002610\n",
      "Epoch: 15840/20000, Loss: 0.00000309\n",
      "Epoch: 15850/20000, Loss: 0.00000525\n",
      "Epoch: 15860/20000, Loss: 0.00000562\n",
      "Epoch: 15870/20000, Loss: 0.00000303\n",
      "Epoch: 15880/20000, Loss: 0.00000455\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 15890/20000, Loss: 0.00004304\n",
      "Epoch: 15900/20000, Loss: 0.00000966\n",
      "Epoch: 15910/20000, Loss: 0.00003213\n",
      "Epoch: 15920/20000, Loss: 0.00002172\n",
      "Epoch: 15930/20000, Loss: 0.00001092\n",
      "Epoch: 15940/20000, Loss: 0.00000756\n",
      "Epoch: 15950/20000, Loss: 0.00000206\n",
      "Epoch: 15960/20000, Loss: 0.00000168\n",
      "Epoch: 15970/20000, Loss: 0.00000152\n",
      "Epoch: 15980/20000, Loss: 0.00000906\n",
      "Epoch: 15990/20000, Loss: 0.00021574\n",
      "Epoch: 16000/20000, Loss: 0.00009271\n",
      "Epoch: 16010/20000, Loss: 0.00000636\n",
      "Epoch: 16020/20000, Loss: 0.00001245\n",
      "Epoch: 16030/20000, Loss: 0.00000706\n",
      "Epoch: 16040/20000, Loss: 0.00000219\n",
      "Epoch: 16050/20000, Loss: 0.00000152\n",
      "Epoch: 16060/20000, Loss: 0.00000144\n",
      "Epoch: 16070/20000, Loss: 0.00000178\n",
      "Epoch: 16080/20000, Loss: 0.00000167\n",
      "Epoch: 16090/20000, Loss: 0.00000146\n",
      "Epoch: 16100/20000, Loss: 0.00000222\n",
      "Epoch: 16110/20000, Loss: 0.00001866\n",
      "Epoch: 16120/20000, Loss: 0.00003557\n",
      "Epoch: 16130/20000, Loss: 0.00001662\n",
      "Epoch: 16140/20000, Loss: 0.00001355\n",
      "Epoch: 16150/20000, Loss: 0.00000910\n",
      "Epoch: 16160/20000, Loss: 0.00000640\n",
      "Epoch: 16170/20000, Loss: 0.00001200\n",
      "Epoch: 16180/20000, Loss: 0.00003594\n",
      "Epoch: 16190/20000, Loss: 0.00000717\n",
      "Epoch: 16200/20000, Loss: 0.00000428\n",
      "Epoch: 16210/20000, Loss: 0.00001456\n",
      "Epoch: 16220/20000, Loss: 0.00003174\n",
      "Epoch: 16230/20000, Loss: 0.00000931\n",
      "Epoch: 16240/20000, Loss: 0.00000192\n",
      "Epoch: 16250/20000, Loss: 0.00000727\n",
      "Epoch: 16260/20000, Loss: 0.00004924\n",
      "Epoch: 16270/20000, Loss: 0.00001619\n",
      "Epoch: 16280/20000, Loss: 0.00001721\n",
      "Epoch: 16290/20000, Loss: 0.00000584\n",
      "Epoch: 16300/20000, Loss: 0.00000408\n",
      "Epoch: 16310/20000, Loss: 0.00000909\n",
      "Epoch: 16320/20000, Loss: 0.00003144\n",
      "Epoch: 16330/20000, Loss: 0.00003027\n",
      "Epoch: 16340/20000, Loss: 0.00001413\n",
      "Epoch: 16350/20000, Loss: 0.00000699\n",
      "Epoch: 16360/20000, Loss: 0.00000348\n",
      "Epoch: 16370/20000, Loss: 0.00000534\n",
      "Epoch: 16380/20000, Loss: 0.00000650\n",
      "Epoch: 16390/20000, Loss: 0.00008567\n",
      "Epoch: 16400/20000, Loss: 0.00003635\n",
      "Epoch: 16410/20000, Loss: 0.00004967\n",
      "Epoch: 16420/20000, Loss: 0.00001106\n",
      "Epoch: 16430/20000, Loss: 0.00000312\n",
      "Epoch: 16440/20000, Loss: 0.00000397\n",
      "Epoch: 16450/20000, Loss: 0.00000266\n",
      "Epoch: 16460/20000, Loss: 0.00000308\n",
      "Epoch: 16470/20000, Loss: 0.00004932\n",
      "Epoch: 16480/20000, Loss: 0.00000998\n",
      "Epoch: 16490/20000, Loss: 0.00001165\n",
      "Epoch: 16500/20000, Loss: 0.00000663\n",
      "Epoch: 16510/20000, Loss: 0.00000360\n",
      "Epoch: 16520/20000, Loss: 0.00000299\n",
      "Epoch: 16530/20000, Loss: 0.00000179\n",
      "Epoch: 16540/20000, Loss: 0.00000160\n",
      "Epoch: 16550/20000, Loss: 0.00000137\n",
      "Epoch: 16560/20000, Loss: 0.00000152\n",
      "Epoch: 16570/20000, Loss: 0.00000456\n",
      "Epoch: 16580/20000, Loss: 0.00008568\n",
      "Epoch: 16590/20000, Loss: 0.00001398\n",
      "Epoch: 16600/20000, Loss: 0.00000677\n",
      "Epoch: 16610/20000, Loss: 0.00000509\n",
      "Epoch: 16620/20000, Loss: 0.00000311\n",
      "Epoch: 16630/20000, Loss: 0.00000171\n",
      "Epoch: 16640/20000, Loss: 0.00000139\n",
      "Epoch: 16650/20000, Loss: 0.00000173\n",
      "Epoch: 16660/20000, Loss: 0.00000302\n",
      "Epoch: 16670/20000, Loss: 0.00006055\n",
      "Epoch: 16680/20000, Loss: 0.00002354\n",
      "Epoch: 16690/20000, Loss: 0.00001873\n",
      "Epoch: 16700/20000, Loss: 0.00000741\n",
      "Epoch: 16710/20000, Loss: 0.00000657\n",
      "Epoch: 16720/20000, Loss: 0.00003390\n",
      "Epoch: 16730/20000, Loss: 0.00003138\n",
      "Epoch: 16740/20000, Loss: 0.00001300\n",
      "Epoch: 16750/20000, Loss: 0.00000421\n",
      "Epoch: 16760/20000, Loss: 0.00000341\n",
      "Epoch: 16770/20000, Loss: 0.00000902\n",
      "Epoch: 16780/20000, Loss: 0.00003189\n",
      "Epoch: 16790/20000, Loss: 0.00002148\n",
      "Epoch: 16800/20000, Loss: 0.00000426\n",
      "Epoch: 16810/20000, Loss: 0.00001255\n",
      "Epoch: 16820/20000, Loss: 0.00001206\n",
      "Epoch: 16830/20000, Loss: 0.00001499\n",
      "Epoch: 16840/20000, Loss: 0.00001919\n",
      "Epoch: 16850/20000, Loss: 0.00001409\n",
      "Epoch: 16860/20000, Loss: 0.00008597\n",
      "Epoch: 16870/20000, Loss: 0.00001635\n",
      "Epoch: 16880/20000, Loss: 0.00000161\n",
      "Epoch: 16890/20000, Loss: 0.00000596\n",
      "Epoch: 16900/20000, Loss: 0.00000370\n",
      "Epoch: 16910/20000, Loss: 0.00000279\n",
      "Epoch: 16920/20000, Loss: 0.00000641\n",
      "Epoch: 16930/20000, Loss: 0.00007056\n",
      "Epoch: 16940/20000, Loss: 0.00003195\n",
      "Epoch: 16950/20000, Loss: 0.00001226\n",
      "Epoch: 16960/20000, Loss: 0.00000651\n",
      "Epoch: 16970/20000, Loss: 0.00000798\n",
      "Epoch: 16980/20000, Loss: 0.00007466\n",
      "Epoch: 16990/20000, Loss: 0.00000351\n",
      "Epoch: 17000/20000, Loss: 0.00000976\n",
      "Epoch: 17010/20000, Loss: 0.00001153\n",
      "Epoch: 17020/20000, Loss: 0.00000609\n",
      "Epoch: 17030/20000, Loss: 0.00000137\n",
      "Epoch: 17040/20000, Loss: 0.00000268\n",
      "Epoch: 17050/20000, Loss: 0.00000410\n",
      "Epoch: 17060/20000, Loss: 0.00001683\n",
      "Epoch: 17070/20000, Loss: 0.00005494\n",
      "Epoch: 17080/20000, Loss: 0.00001330\n",
      "Epoch: 17090/20000, Loss: 0.00000426\n",
      "Epoch: 17100/20000, Loss: 0.00000783\n",
      "Epoch: 17110/20000, Loss: 0.00000165\n",
      "Epoch: 17120/20000, Loss: 0.00000354\n",
      "Epoch: 17130/20000, Loss: 0.00000849\n",
      "Epoch: 17140/20000, Loss: 0.00008715\n",
      "Epoch: 17150/20000, Loss: 0.00002304\n",
      "Epoch: 17160/20000, Loss: 0.00003131\n",
      "Epoch: 17170/20000, Loss: 0.00000815\n",
      "Epoch: 17180/20000, Loss: 0.00000432\n",
      "Epoch: 17190/20000, Loss: 0.00000272\n",
      "Epoch: 17200/20000, Loss: 0.00000178\n",
      "Epoch: 17210/20000, Loss: 0.00000140\n",
      "Epoch: 17220/20000, Loss: 0.00000148\n",
      "Epoch: 17230/20000, Loss: 0.00000215\n",
      "Epoch: 17240/20000, Loss: 0.00001636\n",
      "Epoch: 17250/20000, Loss: 0.00005297\n",
      "Epoch: 17260/20000, Loss: 0.00002416\n",
      "Epoch: 17270/20000, Loss: 0.00000556\n",
      "Epoch: 17280/20000, Loss: 0.00000470\n",
      "Epoch: 17290/20000, Loss: 0.00000268\n",
      "Epoch: 17300/20000, Loss: 0.00000410\n",
      "Epoch: 17310/20000, Loss: 0.00001372\n",
      "Epoch: 17320/20000, Loss: 0.00005794\n",
      "Epoch: 17330/20000, Loss: 0.00000998\n",
      "Epoch: 17340/20000, Loss: 0.00001090\n",
      "Epoch: 17350/20000, Loss: 0.00000319\n",
      "Epoch: 17360/20000, Loss: 0.00000536\n",
      "Epoch: 17370/20000, Loss: 0.00001574\n",
      "Epoch: 17380/20000, Loss: 0.00004231\n",
      "Epoch: 17390/20000, Loss: 0.00000853\n",
      "Epoch: 17400/20000, Loss: 0.00003299\n",
      "Epoch: 17410/20000, Loss: 0.00000290\n",
      "Epoch: 17420/20000, Loss: 0.00000519\n",
      "Epoch: 17430/20000, Loss: 0.00000284\n",
      "Epoch: 17440/20000, Loss: 0.00001072\n",
      "Epoch: 17450/20000, Loss: 0.00012706\n",
      "Epoch: 17460/20000, Loss: 0.00003703\n",
      "Epoch: 17470/20000, Loss: 0.00001969\n",
      "Epoch: 17480/20000, Loss: 0.00001172\n",
      "Epoch: 17490/20000, Loss: 0.00000632\n",
      "Epoch: 17500/20000, Loss: 0.00000272\n",
      "Epoch: 17510/20000, Loss: 0.00000183\n",
      "Epoch: 17520/20000, Loss: 0.00000280\n",
      "Epoch: 17530/20000, Loss: 0.00002894\n",
      "Epoch: 17540/20000, Loss: 0.00001712\n",
      "Epoch: 17550/20000, Loss: 0.00000721\n",
      "Epoch: 17560/20000, Loss: 0.00000663\n",
      "Epoch: 17570/20000, Loss: 0.00000449\n",
      "Epoch: 17580/20000, Loss: 0.00000484\n",
      "Epoch: 17590/20000, Loss: 0.00004033\n",
      "Epoch: 17600/20000, Loss: 0.00003007\n",
      "Epoch: 17610/20000, Loss: 0.00002775\n",
      "Epoch: 17620/20000, Loss: 0.00001561\n",
      "Epoch: 17630/20000, Loss: 0.00000407\n",
      "Epoch: 17640/20000, Loss: 0.00000198\n",
      "Epoch: 17650/20000, Loss: 0.00000291\n",
      "Epoch: 17660/20000, Loss: 0.00001461\n",
      "Epoch: 17670/20000, Loss: 0.00002876\n",
      "Epoch: 17680/20000, Loss: 0.00004922\n",
      "Epoch: 17690/20000, Loss: 0.00000886\n",
      "Epoch: 17700/20000, Loss: 0.00000966\n",
      "Epoch: 17710/20000, Loss: 0.00000540\n",
      "Epoch: 17720/20000, Loss: 0.00000509\n",
      "Epoch: 17730/20000, Loss: 0.00001761\n",
      "Epoch: 17740/20000, Loss: 0.00005426\n",
      "Epoch: 17750/20000, Loss: 0.00001323\n",
      "Epoch: 17760/20000, Loss: 0.00000485\n",
      "Epoch: 17770/20000, Loss: 0.00000564\n",
      "Epoch: 17780/20000, Loss: 0.00000173\n",
      "Epoch: 17790/20000, Loss: 0.00000333\n",
      "Epoch: 17800/20000, Loss: 0.00001251\n",
      "Epoch: 17810/20000, Loss: 0.00008855\n",
      "Epoch: 17820/20000, Loss: 0.00002105\n",
      "Epoch: 17830/20000, Loss: 0.00000938\n",
      "Epoch: 17840/20000, Loss: 0.00001053\n",
      "Epoch: 17850/20000, Loss: 0.00000282\n",
      "Epoch: 17860/20000, Loss: 0.00000266\n",
      "Epoch: 17870/20000, Loss: 0.00000212\n",
      "Epoch: 17880/20000, Loss: 0.00000167\n",
      "Epoch: 17890/20000, Loss: 0.00000297\n",
      "Epoch: 17900/20000, Loss: 0.00003086\n",
      "Epoch: 17910/20000, Loss: 0.00002656\n",
      "Epoch: 17920/20000, Loss: 0.00002265\n",
      "Epoch: 17930/20000, Loss: 0.00000737\n",
      "Epoch: 17940/20000, Loss: 0.00000308\n",
      "Epoch: 17950/20000, Loss: 0.00000308\n",
      "Epoch: 17960/20000, Loss: 0.00000515\n",
      "Epoch: 17970/20000, Loss: 0.00002293\n",
      "Epoch: 17980/20000, Loss: 0.00004747\n",
      "Epoch: 17990/20000, Loss: 0.00000910\n",
      "Epoch: 18000/20000, Loss: 0.00000811\n",
      "Epoch: 18010/20000, Loss: 0.00000236\n",
      "Epoch: 18020/20000, Loss: 0.00000810\n",
      "Epoch: 18030/20000, Loss: 0.00003093\n",
      "Epoch: 18040/20000, Loss: 0.00001197\n",
      "Epoch: 18050/20000, Loss: 0.00001274\n",
      "Epoch: 18060/20000, Loss: 0.00003829\n",
      "Epoch: 18070/20000, Loss: 0.00003755\n",
      "Epoch: 18080/20000, Loss: 0.00001618\n",
      "Epoch: 18090/20000, Loss: 0.00000577\n",
      "Epoch: 18100/20000, Loss: 0.00000335\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 18110/20000, Loss: 0.00000598\n",
      "Epoch: 18120/20000, Loss: 0.00002724\n",
      "Epoch: 18130/20000, Loss: 0.00004093\n",
      "Epoch: 18140/20000, Loss: 0.00000776\n",
      "Epoch: 18150/20000, Loss: 0.00000637\n",
      "Epoch: 18160/20000, Loss: 0.00000523\n",
      "Epoch: 18170/20000, Loss: 0.00001085\n",
      "Epoch: 18180/20000, Loss: 0.00002748\n",
      "Epoch: 18190/20000, Loss: 0.00004680\n",
      "Epoch: 18200/20000, Loss: 0.00000531\n",
      "Epoch: 18210/20000, Loss: 0.00000958\n",
      "Epoch: 18220/20000, Loss: 0.00000212\n",
      "Epoch: 18230/20000, Loss: 0.00000319\n",
      "Epoch: 18240/20000, Loss: 0.00000980\n",
      "Epoch: 18250/20000, Loss: 0.00008768\n",
      "Epoch: 18260/20000, Loss: 0.00002805\n",
      "Epoch: 18270/20000, Loss: 0.00001320\n",
      "Epoch: 18280/20000, Loss: 0.00000988\n",
      "Epoch: 18290/20000, Loss: 0.00001372\n",
      "Epoch: 18300/20000, Loss: 0.00004272\n",
      "Epoch: 18310/20000, Loss: 0.00000324\n",
      "Epoch: 18320/20000, Loss: 0.00000651\n",
      "Epoch: 18330/20000, Loss: 0.00000310\n",
      "Epoch: 18340/20000, Loss: 0.00000242\n",
      "Epoch: 18350/20000, Loss: 0.00000481\n",
      "Epoch: 18360/20000, Loss: 0.00005671\n",
      "Epoch: 18370/20000, Loss: 0.00001171\n",
      "Epoch: 18380/20000, Loss: 0.00001161\n",
      "Epoch: 18390/20000, Loss: 0.00001120\n",
      "Epoch: 18400/20000, Loss: 0.00000646\n",
      "Epoch: 18410/20000, Loss: 0.00000176\n",
      "Epoch: 18420/20000, Loss: 0.00000284\n",
      "Epoch: 18430/20000, Loss: 0.00001305\n",
      "Epoch: 18440/20000, Loss: 0.00004681\n",
      "Epoch: 18450/20000, Loss: 0.00001057\n",
      "Epoch: 18460/20000, Loss: 0.00000230\n",
      "Epoch: 18470/20000, Loss: 0.00000257\n",
      "Epoch: 18480/20000, Loss: 0.00001244\n",
      "Epoch: 18490/20000, Loss: 0.00009328\n",
      "Epoch: 18500/20000, Loss: 0.00001479\n",
      "Epoch: 18510/20000, Loss: 0.00000258\n",
      "Epoch: 18520/20000, Loss: 0.00000486\n",
      "Epoch: 18530/20000, Loss: 0.00000284\n",
      "Epoch: 18540/20000, Loss: 0.00000290\n",
      "Epoch: 18550/20000, Loss: 0.00000262\n",
      "Epoch: 18560/20000, Loss: 0.00000842\n",
      "Epoch: 18570/20000, Loss: 0.00006325\n",
      "Epoch: 18580/20000, Loss: 0.00001319\n",
      "Epoch: 18590/20000, Loss: 0.00000317\n",
      "Epoch: 18600/20000, Loss: 0.00000418\n",
      "Epoch: 18610/20000, Loss: 0.00000407\n",
      "Epoch: 18620/20000, Loss: 0.00000158\n",
      "Epoch: 18630/20000, Loss: 0.00000460\n",
      "Epoch: 18640/20000, Loss: 0.00008849\n",
      "Epoch: 18650/20000, Loss: 0.00001702\n",
      "Epoch: 18660/20000, Loss: 0.00002608\n",
      "Epoch: 18670/20000, Loss: 0.00001071\n",
      "Epoch: 18680/20000, Loss: 0.00000259\n",
      "Epoch: 18690/20000, Loss: 0.00000261\n",
      "Epoch: 18700/20000, Loss: 0.00000169\n",
      "Epoch: 18710/20000, Loss: 0.00000178\n",
      "Epoch: 18720/20000, Loss: 0.00000192\n",
      "Epoch: 18730/20000, Loss: 0.00000943\n",
      "Epoch: 18740/20000, Loss: 0.00006227\n",
      "Epoch: 18750/20000, Loss: 0.00001259\n",
      "Epoch: 18760/20000, Loss: 0.00000880\n",
      "Epoch: 18770/20000, Loss: 0.00000243\n",
      "Epoch: 18780/20000, Loss: 0.00000349\n",
      "Epoch: 18790/20000, Loss: 0.00001493\n",
      "Epoch: 18800/20000, Loss: 0.00006257\n",
      "Epoch: 18810/20000, Loss: 0.00000319\n",
      "Epoch: 18820/20000, Loss: 0.00000910\n",
      "Epoch: 18830/20000, Loss: 0.00000418\n",
      "Epoch: 18840/20000, Loss: 0.00000357\n",
      "Epoch: 18850/20000, Loss: 0.00001510\n",
      "Epoch: 18860/20000, Loss: 0.00003650\n",
      "Epoch: 18870/20000, Loss: 0.00002110\n",
      "Epoch: 18880/20000, Loss: 0.00001276\n",
      "Epoch: 18890/20000, Loss: 0.00001967\n",
      "Epoch: 18900/20000, Loss: 0.00004506\n",
      "Epoch: 18910/20000, Loss: 0.00000200\n",
      "Epoch: 18920/20000, Loss: 0.00001076\n",
      "Epoch: 18930/20000, Loss: 0.00000571\n",
      "Epoch: 18940/20000, Loss: 0.00000327\n",
      "Epoch: 18950/20000, Loss: 0.00000920\n",
      "Epoch: 18960/20000, Loss: 0.00006259\n",
      "Epoch: 18970/20000, Loss: 0.00001424\n",
      "Epoch: 18980/20000, Loss: 0.00001060\n",
      "Epoch: 18990/20000, Loss: 0.00000924\n",
      "Epoch: 19000/20000, Loss: 0.00000175\n",
      "Epoch: 19010/20000, Loss: 0.00000414\n",
      "Epoch: 19020/20000, Loss: 0.00001007\n",
      "Epoch: 19030/20000, Loss: 0.00001805\n",
      "Epoch: 19040/20000, Loss: 0.00000166\n",
      "Epoch: 19050/20000, Loss: 0.00001489\n",
      "Epoch: 19060/20000, Loss: 0.00018464\n",
      "Epoch: 19070/20000, Loss: 0.00007734\n",
      "Epoch: 19080/20000, Loss: 0.00001299\n",
      "Epoch: 19090/20000, Loss: 0.00000943\n",
      "Epoch: 19100/20000, Loss: 0.00000510\n",
      "Epoch: 19110/20000, Loss: 0.00000157\n",
      "Epoch: 19120/20000, Loss: 0.00000142\n",
      "Epoch: 19130/20000, Loss: 0.00000159\n",
      "Epoch: 19140/20000, Loss: 0.00000317\n",
      "Epoch: 19150/20000, Loss: 0.00003125\n",
      "Epoch: 19160/20000, Loss: 0.00001015\n",
      "Epoch: 19170/20000, Loss: 0.00001169\n",
      "Epoch: 19180/20000, Loss: 0.00000307\n",
      "Epoch: 19190/20000, Loss: 0.00000390\n",
      "Epoch: 19200/20000, Loss: 0.00000168\n",
      "Epoch: 19210/20000, Loss: 0.00000250\n",
      "Epoch: 19220/20000, Loss: 0.00001256\n",
      "Epoch: 19230/20000, Loss: 0.00010440\n",
      "Epoch: 19240/20000, Loss: 0.00004232\n",
      "Epoch: 19250/20000, Loss: 0.00001627\n",
      "Epoch: 19260/20000, Loss: 0.00000580\n",
      "Epoch: 19270/20000, Loss: 0.00000303\n",
      "Epoch: 19280/20000, Loss: 0.00000202\n",
      "Epoch: 19290/20000, Loss: 0.00000182\n",
      "Epoch: 19300/20000, Loss: 0.00000200\n",
      "Epoch: 19310/20000, Loss: 0.00001695\n",
      "Epoch: 19320/20000, Loss: 0.00011934\n",
      "Epoch: 19330/20000, Loss: 0.00004578\n",
      "Epoch: 19340/20000, Loss: 0.00001563\n",
      "Epoch: 19350/20000, Loss: 0.00000551\n",
      "Epoch: 19360/20000, Loss: 0.00000385\n",
      "Epoch: 19370/20000, Loss: 0.00000313\n",
      "Epoch: 19380/20000, Loss: 0.00000384\n",
      "Epoch: 19390/20000, Loss: 0.00002721\n",
      "Epoch: 19400/20000, Loss: 0.00001450\n",
      "Epoch: 19410/20000, Loss: 0.00000761\n",
      "Epoch: 19420/20000, Loss: 0.00000678\n",
      "Epoch: 19430/20000, Loss: 0.00000304\n",
      "Epoch: 19440/20000, Loss: 0.00000891\n",
      "Epoch: 19450/20000, Loss: 0.00005802\n",
      "Epoch: 19460/20000, Loss: 0.00000907\n",
      "Epoch: 19470/20000, Loss: 0.00001502\n",
      "Epoch: 19480/20000, Loss: 0.00000770\n",
      "Epoch: 19490/20000, Loss: 0.00000378\n",
      "Epoch: 19500/20000, Loss: 0.00001498\n",
      "Epoch: 19510/20000, Loss: 0.00002066\n",
      "Epoch: 19520/20000, Loss: 0.00001386\n",
      "Epoch: 19530/20000, Loss: 0.00000168\n",
      "Epoch: 19540/20000, Loss: 0.00000266\n",
      "Epoch: 19550/20000, Loss: 0.00000762\n",
      "Epoch: 19560/20000, Loss: 0.00006751\n",
      "Epoch: 19570/20000, Loss: 0.00001413\n",
      "Epoch: 19580/20000, Loss: 0.00000389\n",
      "Epoch: 19590/20000, Loss: 0.00000207\n",
      "Epoch: 19600/20000, Loss: 0.00000240\n",
      "Epoch: 19610/20000, Loss: 0.00000291\n",
      "Epoch: 19620/20000, Loss: 0.00000210\n",
      "Epoch: 19630/20000, Loss: 0.00000535\n",
      "Epoch: 19640/20000, Loss: 0.00007776\n",
      "Epoch: 19650/20000, Loss: 0.00002879\n",
      "Epoch: 19660/20000, Loss: 0.00001139\n",
      "Epoch: 19670/20000, Loss: 0.00000388\n",
      "Epoch: 19680/20000, Loss: 0.00000494\n",
      "Epoch: 19690/20000, Loss: 0.00003843\n",
      "Epoch: 19700/20000, Loss: 0.00003251\n",
      "Epoch: 19710/20000, Loss: 0.00002278\n",
      "Epoch: 19720/20000, Loss: 0.00000776\n",
      "Epoch: 19730/20000, Loss: 0.00000151\n",
      "Epoch: 19740/20000, Loss: 0.00000339\n",
      "Epoch: 19750/20000, Loss: 0.00000247\n",
      "Epoch: 19760/20000, Loss: 0.00000331\n",
      "Epoch: 19770/20000, Loss: 0.00001986\n",
      "Epoch: 19780/20000, Loss: 0.00006197\n",
      "Epoch: 19790/20000, Loss: 0.00002526\n",
      "Epoch: 19800/20000, Loss: 0.00000789\n",
      "Epoch: 19810/20000, Loss: 0.00000140\n",
      "Epoch: 19820/20000, Loss: 0.00000288\n",
      "Epoch: 19830/20000, Loss: 0.00000247\n",
      "Epoch: 19840/20000, Loss: 0.00001570\n",
      "Epoch: 19850/20000, Loss: 0.00013118\n",
      "Epoch: 19860/20000, Loss: 0.00003830\n",
      "Epoch: 19870/20000, Loss: 0.00000340\n",
      "Epoch: 19880/20000, Loss: 0.00000330\n",
      "Epoch: 19890/20000, Loss: 0.00000431\n",
      "Epoch: 19900/20000, Loss: 0.00000863\n",
      "Epoch: 19910/20000, Loss: 0.00003535\n",
      "Epoch: 19920/20000, Loss: 0.00000315\n",
      "Epoch: 19930/20000, Loss: 0.00000877\n",
      "Epoch: 19940/20000, Loss: 0.00000197\n",
      "Epoch: 19950/20000, Loss: 0.00000154\n",
      "Epoch: 19960/20000, Loss: 0.00000397\n",
      "Epoch: 19970/20000, Loss: 0.00004614\n",
      "Epoch: 19980/20000, Loss: 0.00001981\n",
      "Epoch: 19990/20000, Loss: 0.00000504\n",
      "Epoch: 20000/20000, Loss: 0.00000162\n"
     ]
    }
   ],
   "source": [
    "# Create GRU instance\n",
    "gru = GRU(input_size, hidden_size, output_size)\n",
    "\n",
    "# Loss and optimizer\n",
    "criterion = nn.MSELoss()\n",
    "optimizer = torch.optim.Adam(gru.parameters(), lr=0.01)\n",
    "\n",
    "# Training loop\n",
    "for epoch in range(num_epochs):\n",
    "    # Set initial hidden state\n",
    "    hidden = torch.zeros(1, batch_size, hidden_size)\n",
    "\n",
    "    # Forward pass\n",
    "    output, hidden = gru(input_tensor, hidden)\n",
    "    loss = criterion(output, target_tensor)\n",
    "\n",
    "    # Backward and optimize\n",
    "    optimizer.zero_grad()\n",
    "    loss.backward()\n",
    "    optimizer.step()\n",
    "\n",
    "    # Print progress\n",
    "    if (epoch+1) % 10 == 0:\n",
    "        print(f'Epoch: {epoch+1}/{num_epochs}, Loss: {loss.item():.8f}')\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "ce109259",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.Size([1, 1, 256])\n",
      "torch.Size([1, 20, 256])\n"
     ]
    }
   ],
   "source": [
    "print(test_tensor.shape)\n",
    "prediction_tensor = torch.zeros(1, 20, 256).float()\n",
    "print(prediction_tensor.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "09ccd433",
   "metadata": {},
   "outputs": [],
   "source": [
    "with torch.no_grad():\n",
    "    hidden_pred = torch.zeros(1, batch_size, hidden_size)\n",
    "    prediction, _ = gru(test_tensor, hidden_pred)\n",
    "    prediction = prediction.view(1, 1, 256).float()\n",
    "    prediction_tensor[:, 0, :] = prediction\n",
    "    for i in range(19):\n",
    "        hidden_pred = torch.zeros(1, batch_size, hidden_size)\n",
    "        prediction, _ = gru(prediction, hidden_pred)\n",
    "        prediction = prediction.view(1, 1, 256).float()\n",
    "        prediction_tensor[:, i+1, :] = prediction"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "34a402d4",
   "metadata": {},
   "source": [
    "### Four different types of error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "a5cb25ed",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Exact Solution\n",
    "u_1 = u\n",
    "u_test = u_1.T\n",
    "u_test_full = u_test[80:100, :]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "81097123",
   "metadata": {},
   "outputs": [],
   "source": [
    "prediction_tensor = torch.squeeze(prediction_tensor)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "3a08d0ff",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([20, 256])"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Extrapolation\n",
    "\n",
    "k1 = ( prediction_tensor - u_test_full)**2\n",
    "u_test_full_tensor = torch.tensor(u_test_full**2)\n",
    "u_test_full_tensor.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dd4f18ad",
   "metadata": {},
   "source": [
    "### L^2 norm error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "f10a6a9e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Relative Error Test:  0.39502675058540704 %\n"
     ]
    }
   ],
   "source": [
    "# Compute the relative L2 error norm (generalization error)\n",
    "relative_error_test = torch.mean(k1)/ torch.mean(u_test_full_tensor)\n",
    "\n",
    "print(\"Relative Error Test: \", relative_error_test.item(), \"%\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2b070e96",
   "metadata": {},
   "source": [
    "### Max absolute norm error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "8ddb1b1e",
   "metadata": {},
   "outputs": [],
   "source": [
    "R_abs = torch.max(torch.abs(prediction_tensor - u_test_full))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "d608ffdd",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.5465, dtype=torch.float64)\n"
     ]
    }
   ],
   "source": [
    "print(R_abs)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bd15e532",
   "metadata": {},
   "source": [
    "### Explained variance score"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "64fcf37c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Explained Variance Score: 0.604973257268674\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "\n",
    "a = prediction_tensor\n",
    "b = u_test_full\n",
    "# Assuming 'a' is your predicted values (model's predictions) and 'b' is the true values (ground truth)\n",
    "# Make sure 'a' and 'b' are PyTorch tensors\n",
    "# a = torch.tensor(a)\n",
    "b = torch.tensor(b)\n",
    "# Calculate the mean of 'b'\n",
    "mean_b = torch.mean(b)\n",
    "\n",
    "# Calculate the Explained Variance Score\n",
    "numerator = torch.var(b - a)  # Variance of the differences between 'b' and 'a'\n",
    "denominator = torch.var(b)    # Variance of 'b'\n",
    "evs = 1 - numerator / denominator\n",
    "\n",
    "print(\"Explained Variance Score:\", evs.item())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "08b94b29",
   "metadata": {},
   "source": [
    "### Mean absolute error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "5a5a7027",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Relative Error Test:  tensor(0.2579, dtype=torch.float64) %\n"
     ]
    }
   ],
   "source": [
    "# Compute the relative L2 error norm (generalization error)\n",
    "relative_error_test = torch.mean(torch.abs(prediction_tensor - u_test_full))\n",
    "\n",
    "print(\"Relative Error Test: \", relative_error_test, \"%\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4853b195",
   "metadata": {},
   "source": [
    "### Contour plot for PINN (80 percent) and (20 percentage lem prediction)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "02d41a01",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.Size([20, 256])\n"
     ]
    }
   ],
   "source": [
    "print(prediction_tensor.shape)\n",
    "prediction_tensor = torch.squeeze(prediction_tensor)\n",
    "input_tensor = torch.squeeze(input_tensor)\n",
    "\n",
    "conc_u = torch.squeeze(input_tensor)\n",
    "concatenated_tensor = torch.cat((conc_u, prediction_tensor), dim=0)\n",
    "\n",
    "x1 = np.linspace(-1, 1, 256)\n",
    "t1 = np.linspace(0, 1, 99)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "648c472a",
   "metadata": {},
   "source": [
    "### Snapshot time plots"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "bc96e84b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch\n",
    "\n",
    "# Create the figure and axis objects with reduced width\n",
    "fig, ax = plt.subplots(figsize=(5, 5))  # You can adjust the width (7 inches) and height (5 inches) as needed\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "final_time_output = prediction_tensor[3, :]\n",
    "final_out = final_time_output.detach().numpy().reshape(-1, 1)\n",
    "final_true = u_1[:, 83].reshape(-1, 1)\n",
    "\n",
    "# Plot the data with red and blue lines, one with dotted and one with solid style\n",
    "ax.plot(x.T, final_out, color='red', linestyle='dotted', linewidth=12, label='Prediction')\n",
    "ax.plot(x.T, final_true, color='blue', linestyle='solid', linewidth=7, label='True')\n",
    "\n",
    "\n",
    "# Set the axis labels with bold font weight\n",
    "ax.set_xlabel(r\"${x}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "ax.set_ylabel(r\"${u(x, t)}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "\n",
    "# Set the title with bold font weight\n",
    "ax.set_title(r\"${t = 0.83}$\", fontsize=26, color='black', fontweight='bold')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 3\n",
    "ax.set_xticks([-1, 0, 1])\n",
    "ax.set_yticks([-1, 0, 1])\n",
    "\n",
    "# Set tick labels fontweight to bold and increase font size\n",
    "ax.tick_params(axis='both', which='major', labelsize=20, width=2, length=10)\n",
    "\n",
    "# # Set the fontweight for tick labels to bold\n",
    "# for tick in ax.get_xticklabels() + ax.get_yticklabels():\n",
    "#     tick.set_weight('bold')\n",
    "\n",
    "# Set the spines linewidth to bold\n",
    "ax.spines['top'].set_linewidth(2)\n",
    "ax.spines['right'].set_linewidth(2)\n",
    "ax.spines['bottom'].set_linewidth(2)\n",
    "ax.spines['left'].set_linewidth(2)\n",
    "\n",
    "# Set the legend\n",
    "# ax.legend()\n",
    "\n",
    "plt.savefig('GRU_0.83_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "#plt.savefig('lem_0.83_20.png', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "5f6661ef",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch\n",
    "\n",
    "# Create the figure and axis objects with reduced width\n",
    "fig, ax = plt.subplots(figsize=(5, 5))  # You can adjust the width (7 inches) and height (5 inches) as needed\n",
    "\n",
    "\n",
    "\n",
    "final_time_output = prediction_tensor[-2, :]\n",
    "final_out = final_time_output.detach().numpy().reshape(-1, 1)\n",
    "final_true = u_1[:, -2].reshape(-1, 1)\n",
    "\n",
    "# Plot the data with red and blue lines, one with dotted and one with solid style\n",
    "ax.plot(x.T, final_out, color='red', linestyle='dotted', linewidth=12, label='Prediction')\n",
    "ax.plot(x.T, final_true, color='blue', linestyle='solid', linewidth=7, label='True')\n",
    "\n",
    "\n",
    "# Set the axis labels with bold font weight\n",
    "ax.set_xlabel(r\"${x}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "ax.set_ylabel(r\"${u(x, t)}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "\n",
    "# Set the title with bold font weight\n",
    "ax.set_title(r\"${t = 0.98}$\", fontsize=26, color='black', fontweight='bold')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 3\n",
    "ax.set_xticks([-1, 0, 1])\n",
    "ax.set_yticks([-1, 0, 1])\n",
    "\n",
    "# Set tick labels fontweight to bold and increase font size\n",
    "ax.tick_params(axis='both', which='major', labelsize=20, width=2, length=10)\n",
    "\n",
    "# # Set the fontweight for tick labels to bold\n",
    "# for tick in ax.get_xticklabels() + ax.get_yticklabels():\n",
    "#     tick.set_weight('bold')\n",
    "\n",
    "# Set the spines linewidth to bold\n",
    "ax.spines['top'].set_linewidth(2)\n",
    "ax.spines['right'].set_linewidth(2)\n",
    "ax.spines['bottom'].set_linewidth(2)\n",
    "ax.spines['left'].set_linewidth(2)\n",
    "\n",
    "# Set the legend\n",
    "# ax.legend()\n",
    "\n",
    "plt.savefig('GRU_0.98_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "#plt.savefig('lem_0.98_20.png', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c7209416",
   "metadata": {},
   "source": [
    "### Contour plot where 80 percent for PINN solution and 20 percent for GRU solution"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "22bc6f0a",
   "metadata": {},
   "source": [
    "### Exact contour"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "d160ad08",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1440x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import torch\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.ticker import FixedLocator\n",
    "\n",
    "# Assuming you have defined concatenated_tensor as a PyTorch tensor\n",
    "# concatenated_tensor = torch.cat((tensor1, tensor2), dim=0)\n",
    "\n",
    "# Convert concatenated_tensor to a NumPy array\n",
    "concatenated_array = u_1.T\n",
    "\n",
    "# Define custom color levels\n",
    "x = np.linspace(-1, 1, concatenated_array.shape[1])  # Replace 0 and 1 with your actual x range\n",
    "t = np.linspace(0, 1, concatenated_array.shape[0])  # Replace 0 and 1 with your actual t range\n",
    "X, T = np.meshgrid(x, t)\n",
    "\n",
    "# Define custom color levels using the minimum and maximum from the NumPy array\n",
    "c_levels = np.linspace(np.min(concatenated_array), np.max(concatenated_array), 400)\n",
    "\n",
    "# Plot the contour with interpolated data\n",
    "plt.figure(figsize=(20, 5))\n",
    "plt.pcolormesh(T, X, concatenated_array, shading='auto', cmap='coolwarm')\n",
    "\n",
    "# Set the fontweight for axis labels to regular (not bold)\n",
    "plt.xlabel(\"$t$\", fontsize=26)\n",
    "plt.ylabel(\"$x$\", fontsize=26)\n",
    "plt.title(\"$u(x, t)$\", fontsize=26)\n",
    "\n",
    "# Set tick labels fontweight to regular (not bold) and increase font size\n",
    "plt.tick_params(axis='both', which='major', labelsize=20, width=3, length=10)\n",
    "\n",
    "# Set the fontweight for tick labels to regular (not bold)\n",
    "for tick in plt.gca().get_xticklabels() + plt.gca().get_yticklabels():\n",
    "    tick.set_weight('normal')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 5\n",
    "num_ticks = 5\n",
    "x_ticks = np.linspace(np.min(T), np.max(T), num_ticks)\n",
    "y_ticks = np.linspace(np.min(X), np.max(X), num_ticks)\n",
    "\n",
    "plt.gca().xaxis.set_major_locator(FixedLocator(x_ticks))\n",
    "plt.gca().yaxis.set_major_locator(FixedLocator(y_ticks))\n",
    "\n",
    "cbar1 = plt.colorbar()\n",
    "# Set the number of ticks for the color bar with uniformly distributed numbers\n",
    "num_ticks = 5\n",
    "c_ticks = np.linspace(np.min(concatenated_array), np.max(concatenated_array), num_ticks)\n",
    "cbar1.set_ticks(c_ticks)\n",
    "\n",
    "# Set the fontweight and fontsize for color bar tick labels\n",
    "for t in cbar1.ax.get_yticklabels():\n",
    "    t.set_weight('normal')\n",
    "    t.set_fontsize(26)  # Increase the font size for color bar tick labels\n",
    "\n",
    "# Increase the size of numbers on axis and color bar\n",
    "plt.xticks(fontsize=26)\n",
    "plt.yticks(fontsize=26)\n",
    "\n",
    "# Increase the tick size and width of the color bar\n",
    "cbar1.ax.tick_params(axis='both', which='major', labelsize=30, width=3,  length=10)\n",
    "\n",
    "#plt.savefig('Contour_Exact.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "plt.savefig('contour_exact.jpeg', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "08b8e4c7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABLcAAAF/CAYAAAC7eytwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAACkLklEQVR4nO2dd5gtVZX239V9LxkFJTiYABUVRRHMfhgQRQxjjp8Bs4w6OvqpY744pgmOWUdMmBOmcVDMqKOOERTBEcQsKkERLnBDd6/vj6q+fejbp/Z7utbZvavq/T1PP33CPnvvUydU1e+stba5O4QQQgghhBBCCCGE6CIzaz0BIYQQQgghhBBCCCFWi+SWEEIIIYQQQgghhOgskltCCCGEEEIIIYQQorNIbgkhhBBCCCGEEEKIziK5JYQQQgghhBBCCCE6i+SWEEIIIYQQQgghhOgskltCCCGEEEIIIYQQorNIbgkhhBBCCCGEEEKIziK5JYQQQojsmNkRZuZmdtpaz2USzOwL9bwftNZzEUIIIYQQFZJbQgghhFgL/qX+/09rOotlmNlDanm12czWr9DkZfX/V5jZupxzE0IIIYQQKyO5JYQQQoismNkDAdwWwE8AfHKNp7Ocw+v/P3H3rcvvdPf/BnAqgIMAPD7jvIQQQgghxBgkt4QQQgiRmxfU/9/s7r6mM9meRbnVlC75pvr/P5qZTXk+QgghhBAigeSWEEIIIbJhZrcAcBiArQA+tsbTWYnD6v+nN7Q5GcAlAPYHcNSU5yOEEEIIIRJIbgkhhBCCxsw+Xdek+lBDmwPqNm5mt1129xPr/19w94vGPP4GZra1fvyrx7QxM/to3Wajmd1qdc8IMLOrLs4XwJ71zW8ceQ5uZn9abO/umwB8qr76hNWOK4QQQgghYpDcEkIIIcQkHFr/b0rbW2yzAOCMZfc9oP7/+XEPdvdzAJxYX32ame29QrN/A/BgAPMAHuru32uYT4qbEm2WP4/F+f+tme3QYmwhhBBCCNESyS0hhBBCUJjZngCuU189vaHpLer/57r7ZSOPPwjAvvXV7yeGOx7AZgC7AnjOsnk8DcCz6qtPcfeTk5Nv5n8A7I6lWmB/qK+P/t1r2WO+W//fCcCqo8aEEEIIIUR7JLeEEEIIwXKLkcunE+1+tOz2I+r/c4nHw91/B+Ct9dWnmtk+AGBm9wXw+vr24939Hc1TTuPu8+6+EcCN65tOd/eNy/42L3vMzwH8ub56x7ZzEEIIIYQQq0dySwghhBAsi9LqPHc/n2i3XG4dXP//g7tfQYz3SgAbAewC4LlmdhsAH0J1/PIud99AzZrn5vX/ppTLUX5Z/79J8DyEEEIIIcQESG4JIYQQguXQ+v9Y+VPXx7pmfXW53FqsnfUXZjB3vwDAa+urxwH4DICdAXwWwJOZPljqulnbIrfIhy0+j70i5yKEEEIIISZDcksIIYQQLIsRWacTbYDt5daiBKLkVs2/oUr/2wWVHPs+gIe4+9wEfTAcDGB9ffl08jGLaYkrFbwXQgghhBCZkNwSQgghRBIz2wnADeurTWl7i3LrYnf/TcDQV0NVo2uRZ40WqQ/k0Pr/RgA/n0L/QgghhBBiSkhuCSGEEILhpgDW1ZdPb2h35/r/8qgtALiw/n81ZkAzuxqAzwHYZ+TmZzCPXQWH1v9/7O5OPmbxeVwQPx0hhBBCCMEiuSWEEEIIhsWi6ZcD+MVKDcxsTwB3ra+uJLcWJdCeqcHqSLH/BHAjAL8F8OL6rgeY2eHknCdhsZj86RM8ZvF5SG4JIYQQQqwhkltCCCGEYLhW/f/8hsimF2OpbtVKcuus+v/fmNku4wYysxkAHwBwBwB/BXBPAK9GlS5oAF4x2dQpblr///EEjzmg/n9m8FyEEEIIIcQESG4JIYQQYhL2M7M9lt9oZg8B8MyRm1aSW9+o/8/iyoXnl/M6AA8AsAXAA9z9J3UB+X+q7z/azO442bTHY2aGpWL3l5CPuT6W0hK/0dRWCCGEEOViZrNmdlMzO9bM3mhm3zazy83M678NUxp3VzN7lpl908zON7NNZvZrM/uImR3dsu8dzOwnI8/BzezOicecuqx909+v2sxvGgxWblnFjc3sMWb2ZjP7npltrl+oTYHj7G5mLzGzH5vZpWZ2sZl918yeaWbr0z0IIYQQRbAoq3YA8HEzu4OZXcfM7mhm7wTwYSxFPc1jhWgmdz8bwPn11VutNIiZPRfA0wE4gMe5+1dG7v4AgLPry69smuzIwdeJqSdWR6L9qb76FDM7uN5/71anR67E4vw3AfheagwhhBBCFMtHAZwB4N0AngbgtgB2nuaAZnYLVMdNrwFwe1QrL+8I4DoAHgLgFDP7gJntsMohno+lkhKDYF26SW+5LpbSI6aCmR0A4EsADlx2163qv0ea2d3cfZIl0YUQQoi14HMAfgjgMABH1n+LzAF4KYCdUNWu+pm7j/uh6OMAjgNwNKoIrW2Y2cNRpR8CwAvd/QOj97v7vJm9DMD7AdzBzO7p7p9t86RGeCeAFwC4I64s5t4D4NgV2t+9/v8Zd98SNAchhBBC5Gd22fU/A7gIwA2mMZiZXRfVcdW+9U3fRXVscyGAQwA8CcDVATwCwAKAR03Y/8GojmkA4DIAu65imvdP3H/5KvqcKkOWW6P8HtUbai8AR0R0WBvWz6ASW1cAeC6AT6KqRfIYAC8BcDiAj2DpAFkIIYQoklos3Q2VfPpbVMXUzwPwZQBvdPcfmdl/1s2b6la9HZXcOsrM9nL3CwHAzO4C4ERUNbXe5u6vGvP4DwF4IYAbA3iFmX1ueQ0wM7vWyNX/IZ/iS1AdzD4G1cHsYsTW6csbmtmOqNImAeAdZP9CCCGEKJPvAvgpgB8A+IG7/9LMjkUVyTUNXoclsfUuAE9094X6+ofM7D9QlTy4DqqAmA+7+8lMx3Xd0neiirT/DICrALjTpBN0909N+pi1xvjVrvuFme2O6lfn77j7H+vbNqD65Xmzu49LQ2D7fxqAN9ZXH+LuH1t2/3MB/HN99d7sm1UIIYToOmb2fVQ/8DzV3d8yhf4fi+pg8RcAbuTuW4P7fwCqCLRfAzhw5IBUCCGEED1gmdw63t03BPV7cyz9cPYbADdcKdrdzO4JYNERfN/dVyznsMLj/h7A61FFbB0M4L1Yklt3cfdTGx576mJbdzdmvJIYbM0td7/U3T+9KLamwHH1/9OWi62a12Jp6fDjVrhfCCGE6CuL9bL+ri7mHs1R9f8N0WKr5mn1/1dLbAkhhBBiAh46cvmEhjIOn0O1SjQA3NLMrpfquE53XFxR+sXu/pvVT7N7DFZuTRMzOxCVJQWAk1ZqUx9sf7q+etemJdGFEEKIPuHun0CVLngTLKX3hVDLsruiqpv1gUTz1fR/BwB3QVXYXimJQgghhJiE0ZJEp4xrVJdc+PzITczqiW8DsBuqGqlvWNXsOozk1nQ4fOTydxraLd63E6raIUIIIcRQeG79/0WR0VtecQ13v+mUoqpeUv9/obvPTaF/IYQQQvSQuh7W4nn/HJZWoh7H90cu3zTR96NQCbB5AE9y9/nVzrPu72Qz+4OZbTGzi8zsdDN7o5kd2qbfaaKC8tPhoJHLv2ho98uRyzdCVcBOCCGE6D3u/g1UxeM7hbszv5wKIYQQQiznWgAWM7Z+T/xI9uuRyweNa2Rme6MqewQAb3D3CK9wz5HLV6v/bg7gaWb2blR1U68IGCcMRW5Nh71GLl8wthVw/sjlq6/UwMw2mJkTfz9f6fFCCCGEEEIIIbqNmY1NYRsyE5wvb1jruQLYY+TyhUT7i8Y8djlvQOUTfoulCPPVchGADwJ4NoCHA3gEgBcA+NZIm8cC+IyZFRUsVdRkesSuI5fHFYgDgFHTuVubAXfYYYfrHXLIIcNc+lIIIYQQQggh+s0laz2BaXL4zK5+yeoy6c6NnssUGT3nb/IEi4z6gt1XamBm9wbwsPrqU9194yrnBgDPR7Uy40qL8bzKzO4P4P2oos/uCuB5WCpgv+ZIbk0HNs1itF0rMXXVPfbAxz91cmMbazeE6DEGLfYlhBCim5jp+EYs8frXv37pSv3W+PtnPHNN5iJEJDe4/oHnrPUcpsklmMfrd95/4sfd64qfdXVhttY7LzPbHcBb66sfd/fPtJqQ+7cT93/SzJ6IpQV7nmNm/+bum9uMG4Xk1nQYtaU7LbuOZfctctlKDdx9A4ANqQFvesjNfR6zjW36Krf6+rzyks5Q1nYW49B7Qwixpkxl3QDRVd74hu0XCHv6M541tr13r/SfEL3EzDCzblWfx/Pcfb/o+UyJUS+wM9F+tM2lK9z/z6jqeF0C4O9bzIvG3T9oZi8BcEMAVwVwBwBfyTF2Csmt6TCaP7s3xsutvUcuXzSmDYUDmPduya3S5sMw5F+Hu/h6lUZft6FODJrp6+suRDmohKxoZkHvESHKxwBb3/vP6sUjl1esub2M0Tajj4WZHQHgKfXV57v7ea1mNhmnopJbqP9LbvWYs0cuH4Arr4qIZfct8r9tBnQY5hJyaybjCVZOCZT1xJEYqq8nsr19Xhnfq0OWQH19/zB08XUf8uslhOgfOb6Hu/hdL0RRGFYbudUlfgfgclQ1q65lZusSKyZed+Ty2cvuexyqMkdXANjLzF5E9PEoM/s/9eWPuvvyPllGA3P2XGUf4UhuTYfRpTdvg/Em8zb1/00AftpqRE9Hbi0EnaxQMiDovCjnCVZf5V8UXTzZZebs3s+daGmvV2kH/V38DOYk5+tV2ntVCNE/mr7T+nocIETnMMDW9/vz6O4LZvZTAIejcjE3x5XdwXJuOXL5J8vuW9xYOwM4npzC45b1t1q5NTaibC2R3JoC7v4LMzsLwMEAHgTgVcvb1Mtm/m199cvufnmrMWGYX0ikJRInc9RJRpS4Cjq5jDoxYip2hJ0QdzACLKf8Y2Bei+KESsZtOOTnzpDzZKa0514aud+rEptC9JunPv0ftl1e/H5p+s5nvoNK26cK0Uda1NzqGp9HJbcA4GiMkVtmZvX9o48rhTuNXF6tIAtHcmt6vBXAGwEcZmYPdPePL7v/mQD2HWnbiiotsTlH2ZyQW0EH/VS2NCN4ChNgnZxzEF5aqmlhv7Qy8q+0g+O+pmQW99kZ8HMvEUZsajt2jLK+WsUa89RnPHvb5cWshqYfMEvbNwsxWAYQuVXzUQAvqC8/2cz+3d03rdDuGADXry9/393PHb3T3Y8FcGxqMDM7FUsy6i7ufurkU75Sfw8HcKP66qUA/rtNf5EMWm6Z2cEArjJy07WW7rLbLmt+2ugSlyNvkl+7+/4rdH8CqgJvNwHwPjPbF8CnAKwH8BgAL6nbfdHdT273TCoWEnKLIUqAUVFQQQKDO0FP9xNVvjDnSZHGChgrSPDMd1FgBAnC0qL6ok5UuhjhE/bcC3tNc6Pt2DG0mQcJdTxKHBsvSG4JUQY9qLllZieiOtcHgOPdfcPyNu7+IzP7FID7AbgOgDeZ2ZPcl5b+NbPr4MoBMNv1E42Z/T2A77j7dxra3A/AO0Zues0YMbcmDFpuAXgLrhxSt8gOAL697LYDAPyK7djdt5jZfQB8CcCBAN5c/43yAwAPZftsHg+YWwiQW0zqIiHAZoK+l6LSJLsp5NLMZDyJj0rjoupgdfB5MUSd6JYmbzop9hh6Kv8YSnuPdRVmO0qAiaERti8kvqMZcZUzckv1vYQYjwGw2bX5jJjZAQAev+zmm41cPrIuKzTKx939tFUO+UwAt0OVyfV4ADc1s/ehKtR+CIAnY6mu1QeigmESHAng9Wb2MwBfBnBmPR8DsD+A+wC4/Uj7r2KF8ktrydDl1lRx91+a2aEA/gFV7a0DAcyjykv9IIA3ufvWkLFgSbnFFYJnIpwIUUR8L0VFXDEHSWESKKoof5jkiJpPPqJeC4bSos1KEwY5hWUUpW1Dhij510kJErRP6TOUABu4JBTdIee+kIGJ3FJaohCFYMDMGsktVCsKvrDh/iPqv1F+DmBVcsvdf21mxwA4CZUjuA2WFpsb5YO4chH4HNyw/huHA3g7gH9w9y15psQxaLnl7nee9mPd/VIAL6v/pocDcwmjNGMxooj5FYwYijpYZ056jBhsIaxWlmRbW8KEXJCsZWBiIoccbdZF4SSxVw6Dln8kM/19ajHITWShNHHFQBWLz7hPLW37CFEWBotK/+kA7n6amd0MVZTWgwDcAMDuAM4H8D8A3uXup2Sc0rMB/BeqiLKbAdgHwF6onNHFqAJ0/hvAu929mCLyowxabvUJRzotMUoUcVIqDXN+lVWkha0CmU+2RX3955RtpdWyYfqZDxmpPCHHkDOqpK/CqTSZ1NeC6ux3S2mvBwMjALv4mkUh+deeLq5AzEClLgbUrBVCBGCAza7N57Eust76S44t8j7S/jIA/17/TYUJgnLOBXAurlxTq1NIbvUEd8PcfEDkFiNUiH5KE2mMMFig5pweKuoEgztYj5F/paU3Mj/alCZCSqtbJiHXHkm7ZrooiYBhy72uvmYpmJqZQ4ZazbentaC4gvIx9HUbCpELw5qmJYoeILnVE6rIrZTcSvfDfJ0wsoSS7lT0UpRIY8ZKt4kSaVSEEzMhAipNMmPUGkOcbAtaSbMw2VZaNFWUCMgq5BioelH5KE1e9FUSAehvmltHX44kfX29ghia/Pv+d7657fKWhepU57BbLy+Vs4Qit4QoBMOg0hJFPJJbPcEdycitWcJgcDKJmA9xlkrJJEYqBEk7RvBQKyrmFGkEXOBNWZElkm3NdFG2UWP1VMhljZaRkAuht+Kur+cMHXwpouhrOmEbnvio+29327fO+uvY9qq5JUQpmCK3RCskt3rEXOIsizpYp4RTjCRjorvcY8ZiCEvbZMbKl+lVnEhj5kPVl6GsXbpJVLoGl/4Z87zmo+RfRtnGkFMolBb9xiAhVxZdFHeSdj2kgy9XFJN8vpo+r8xnmamVKoRohxlgkluiBSUeLwohhBBCCCGEEEIIQaHIrZ7gDiwkam4RQVDUr2CzRJgGFcUSFJUVlt4YNJ+cqZQMQ44SY+hvSma6jSLJmiktyqW0aLOcz724aDOSmS4WmO7glPsavTTklEMqJX6Cz1dTXa35oM+pCsoL0R6bUeyNWD2SWz3BkU5L5ArBpxuVJsmYNElKJkXVG8uaSpluM2iRRklNYqyMqYt9TclkyCnb4sRMPtlGkTObsLC0PPbEUlKuGQm5gijrrRHGtKXdYbe+w7bLiz/8NqUVMt8dzLGCEKIlKigvWiK51RPcga1zzW1mZ7l+UjBCnalfJUnWnpzRZpRUYE5200OFSRfu9cpZ5J0ZabgijaG0+mcMQ5ZtpUWA1QOWRWEnzRJyBdHTpzXt9/zb3vuZbZc3bt0JQLPcUuSWEKWggvKiHZJbPWIhsZQfc2LNCDCmqCZz8lSaJOMKyjNjpdtwRfmZsQYcbcZMh3mvhqU3pttIpKX6iXox0k36GrXGkFe2pWG+eyMpTbiVFgFHUdh0FkrbPgTcvrl7J3ldTKVU5JYQZWCK3BItkdzqCe7AXOKMZSYo5ZCRUg2lDbbBSDJmRUVOJuWL8uHkTT+jzZgTQurEOijajKE0kUaJoiCh21eRxjDkqDVqrAHLNiC/cEtS2ol1YZunuO1DICGXh7mF9KwXiDlrtUQh8qCaW6INkls9gUpLJM6sucit9EHAbNBJPBVtxsi2sIgrSbLmsfLJEi7aLN0P88T6mrY5ZJHGMOSoNY58J7G5o5tKE26SbQkK2zwUpW1Dgi4KOWafwYir0qSdEL1EkVuiJZJbPWIhcTQeFXY9S5grTkrFzCeVjglw0i5nupwkWfuxKFlC9VJWtBkl9nJGmw1YpFEE5arkjMpKLKzLk1WkMWQ+IM44nGRbgu45Fwm5TDBiPLXaOMtCJ19UIUpCNbdEOyS3ekIVudV81MEIHuZoKyqdkIm8YVIpo4QBs33CVuiTJEuMFROVVZyU6mu0mURaI2EptENO/2Qgu+limihFxrEWCitAVJxsYyhrE3ayVhb14xQhrhgpVdhbXoheoppboi2SWz3BnYlgioq4YmYUFZUVk0oZVQydSqUMqxNGjCVJlhgr5j2fdTsHCYzSxJ5EWqqfmDOnqJP8nOmfuUNYwiLXCGaynhH3N000RXmyLd2mNFHUV9nGHWsGRW4Vtg2F6CKquSXaILnVExyOublmu8WEeTK1srjoLkZK5fvVe4aoN5YzlVKSLDVWWZKMkiWlpWRSzytKkjFjRUU4xZw9LESt/llYWqJEGkM+qdBfkcaQ8ckX5okk2wII2oRMVBZXcytgMkKIZhS5JVoiudUXHJhnzmoihmJO9IOkO/f9lk84MUdbeaNh0m3A1BsjumEgyp+FrbaUU5Ix25mqtREkybqYksnICeb9EyXJios2I4iTFzET6qJIA7q5KAFD1hRQgr5GrVEUNp2hybYjbrLbdrd9+nvjV11iFkpiUOSWEG0xyS3RCsmtnuCE3KJqZQUVZ+eEU0x0VyejxCihQkTaEaZofj7dppNRYukmnZRk80Enw4wkY4iK3CovJTPdprciLWsh+O6JNCBzDaeeSiBFrRVEYdNZC9nWdAysyC0hykFyS7RBcqsnuKfTEme5YlkhUMXig1bDCJNShUWJMZIsKj1t0KmU6SZgtnPUyXfUPj2nJMu6wmPO93xUtBnBTNjZZ1lpm10UaQCw0NeVByXSspBTtlH75qDIJIZSC9M3RWcxq263HUMIkaYqKK+aW2L1SG71iHRaYlTSWJqcx8/ciQFxsMUVKQrphzsYJabDzCcoSkySrP1Yg5ZkQQtacCmiMSjaLDWfskRapFDImU4okRZBWVJBUWvdgpFSxW1mIXpKVPCDGCaSWz2hSktMndIx4ip9WsisKsOkATIwv6blTJNk+jEmao2qlcXksKWbREWJ5ZRkDMwPO3Epdek2kmTNdFGS5UzJpAg6u+prtBmTtgmUVwNNIi2AAUdKKWqNo+kQOSpyi0F1uYRowFRzS7RDcqtHLAREbjEHZLMZw0UtY2Rq1FhcZFL3osQ4icikccWE3sSlf4ZMh6wBRrQZsCTjtk/GulOF1S0rLSWztGgznrIizhhKW0yAQSItF2WlHFL7+CDGfS6+8uPLt12+YOOOAJpftijhlFNqCtFXlJYo2qB3jxBCCCGEEEIIIYToLIrc6gnunkxLZGoKcEXn89XuomqqBxE1FlenRymQTQy6Tli6CUXOlMysEWDEbOJqdzEvfLpJVFH+0uqNURSWSgnEpVN2sS5ZVwv8p+hrlBgTQZk3kKx7UWLzRN4mU24jJ0pdFEOlKihf1udRdAvJrZ7gDsxtTa2WGPVlkU+AcRKorCL4jJhhXov0AgFkyg8lrspKgZQka99PXK2sdBtJsmai0nS6WG+stFRKIPK5pSmtLhlDiQX+00iktaWvIo2Zc1xaYkw/QgwZyS3RBsmtvkBEbsVJKYaYsYyqXxAk0oK+S6OORZkaYDlXiswZJUa9e4iXnUvbj/l1OCriKup55ZVSaahvFioKiulIkqyJuMicGIqLNgOKiziLk2QMhUWbEUiktSdr3TKGqM8gU8sxqE1pKAJMdA9TzS3RCsmtHpGKckrLL6A0AcaldASJtKADu6jC9FSaJFPknQi3ZyLkmGgz6p2hKLHmsbI+r3SbnFIqLO1OkqyRnCtX5iQ0dbGwtExFmzUjkdaevCIt3cbDIreY1MWQoTopwIQoCqUlipZIbvUEd2BhrnnvPLMuffpUmgBjaoBFzTnqu5TxTUT5qt6mSUZFiUXJtr5GiUX9Et3FFSclyfIQJclyrlzJEifKMq4EqWizLEiktSenSJsjDrio1MVIey6EGIMit0Q7JLd6A5OWmKaLAoz7hZ0Yiymmz1gpAi4qK6YwThfTJGeIsz1GtlG/Dg85SizdDUXUQX/OovySZIn5MNPJSFRxfyBvgX+G4tIyC5NkDF0UaaWlIkd5NG5/WVZkxnzQsR2DoruESFBairToFJJbPcGdlU7tKU6AEfPhpFR6LEaE5CyUz0VlpdswB3alpUlGRYnNBpmH0qLEmG2YM5WSOpErrd5YukkY+dagBYYsyQDVLksRJckiFwFI0U2Rpmiztox7Ws974lHbLm+Zqxo9999PHdtPzqLzQojxaLVE0RbJrd7gWMgktxhKE2BRUoojPZ9ZYqx5ph8qbZMQRdRTDypez4gQYj6zjHCijkbzFdMvL0os3WbIqZSlFeUvT9pJkkXQV0nGUFq0GSXhg16uLkabMZQg0s74wde3u63pdeOKzpf1Oc3JgJ+6WAOUlijaILnVE9wBT4Q9OHHAwQiVKHIKMK4OVtCqi9RBQL6VIpnIm5x1wphIMia6a55JbySee1SUGLUKJHMEXViUGEMXUymZaMUuFuVnGLIkA8oTZX2VZAylRZvlPIvvYrQZ8xnLmd44yWen6Tuf+yEsjepyCdESM0VuiVZIbvWIkJpbhOaQAEv1w0RlpYlKJ8yblpivTlhUmmTUQT8TIRdVTD9nlBgzVmkF93OKojhBSIzFdCRJlqSv0WSSZO0Jk2QMijZLEPs+bPquZr7HFb0kRB4UuSXaILnVF9zhiaOXKCk1ZAHGBQZ0T4Dl/JEkqk7YAhHd1cU0SaaYPvVuLixKLC5SKkaO5kylzFlvjCFvfa80cavzRZIxmiyjkGSIkmQMpYm0IadkMnQx2myRpl1iVFUPCTAh2qPILdEGya2e4ADmE2ePs4SUWqDsTfoslRFgTpykRhXJjxJgUVIqLi2REHLMa5pzpciglRCj6oQxsqSLaZKdjBJLN8kaJcbJi36mUuaMysq6ciVJ7miyFAuMBAqSZHlXiuxntFnWaCpFm23HP731S9suX3Bx9Wlu2rdS9R5VUV6IqaOC8qItklt9wdM73vkoO8HFaYSMNBsWlZWmNAEWliZJFZ0ntmGQAGPkDTNn5sg3qk4YcyA+S5ykLRAiLerXakWJNVNawf1Bp1IyYxFt2PPunKKsk5KMoLSkkb5KMoa4lMx0G4+KpppyiNNNDrvztsu/u2BRbo1vz/ygVhqKEhP9xOLC1MUgkdzqCY50WiLVDxHlsxB3Ckq0SSMBluonnwBjIniiVoqMKpS/QMyZOeGJqlsWlSapKLHEWOkmYVFiUdu5i6mUDDklGTD0lEtJsiYkyfIQFW1mQfvmKFEUVZheiCHDHN8LMQ7Jrb7gMWmJTHQXld4YJMCMSV2cI+SNBFiin/R84lIfYlIycxbKz1knLCpNUlFi7ceiMsGi0vd6mkrJkLPeGFBeYX4GSbJmeivJMq5OGEVpKZnMWMw+rLTtLEQvMRWUF+2Q3OoRqcgtpsYVcwQdJcComltzxFjrCGknAdY8H+boj5hzXF0uYqiglSK5E+t8dcKYA2jmeQ1ZgDGGhxETTN2HqDjWnFFQXUyljEo1BfpbmJ9BkqyZ8l6v4Rb3Z2Dez8w+Ner7N4oFmTQxWEw1t0QrStuPCyGEEEIIIYQQQghBo8itnuBwuDf/9DQ/l+6HiYJifipbmCEaEfOhIpwKi+6ifnEjxsoZ3cXUnWLmHBXdFRW9RKUlBv1AxEQdMfkR1GvBRIkxqXA9rQHW1xRI6i2WcTVJhqg6YZF0sVZYab9Elve8FAHWBJcqWFa9MareIzEUE1UdFSmVOAwXQqQwqKC8aIXkVl8gVksEIZy4mkCELKFESLpJaQKMKxYatPJgRgE2QxWVipkzI8AYN0rVG4txtWGrQJZWBF81wBL9EGMxAoz51lAKZHskyYixgvqJorznJUnWRBclGeOtGCnF7OOFEO1RWqJog+RWj4hYLXEhqGgSI8CY+TIRYEacWDNHiE6cqXAH4tTpZbpJRgHGnaTlm3NOAWZEwV7mec1Q78OyVl1UEfz2hK3eOOAosZyrSVYDpptkLRafsaB+eTIpBkr8BkUCcUiStaWN9D7pnRu2Xf7LJdU2POrBLx3bnonuyolEmhgqBoMx6QBCjEFyqzc4FhI/Pc0sxHxZOCEDuNUS08xQBdNjCtwzKwZSUTVEGwmwBMScGanApGQyZzxM9FvcfJiIK6KbworgdzFNkhIqihJr7qewKDGW0tIp827HNDklWVR6Wticg+bDPa9+SrKo13QcH3/Xy7a77a4PGi+3omRS1CqQQgwWQ95fl0TvkNzqCU6kJTJRUIwAcyZkhuiHEWBMGheDBFiCDgow5kSfe71iBFhUyqoRJzM5V4GMqhOmNMnEWIyMjJKIA44S4+lnOmUXJVlpv+GXFv0mScbR5K+Yr8SI7AghRBpTzS3RAsmtAUHtmImTZqqfIAEWJaUYmIg0hgWinxni8FgCLEFGAcYJJ+a5M5Ij2aS3hfKHLMCoKLrCiumXFiXGfC4AdjsyPeUrut/FVEoG1RtrjyQZR9N37EJhaYlRafNCdBHV3BJtkNwCYGb3A/AUALcAcFUA5wE4BcBr3P3cVfa5AcD4GOgl3uzuT1vNGMtJ1YxiTHgqtRGIS2+MEmBOncimm0SJNC4lkxAzRD9OHI1yB9ASYG2hosQyCrDSCuUzH1PMliXAnNk+GdMkGXKmSTJkjRIj6Ws6ZWmplAyqN9ae0p5XqZKsaV8WVoNRtbKEaIcZd9A0teHNADwEwKMAHApgbwB/BnAWgA8BONHdieXOqLEm+cJ4j7sf29DX3gCOAXBnVD7jAAC7ArgEwC8AfB3AO9z9p8S8rgrgaAB3AXAYgOsDuAqAjQB+A+CbAN7t7t+bYP7ZGLTcqt/A7wDwuGV3HQDgOACPMrOHuvtns09uUpjVEoOkS1R6I0XGFR6ZzRP13KMEGGMnZighx9BPAcYIwpjYQE6ARUmOKAEWVSg/ShZEySSuJk4/o8SiTuRyRolFhiXlTIXLm06pVMomJMmaKe15tZFk9zt26bflP19cHSc1vY8YKcWsqCiEaM9aRW6Z2Z4ATgJw5LK7rlH/HQngODO7v7v/Jvf8xmFmbwDwd1j5dOVq9d8tATzTzF4L4HnuK/98a2bPBfAyADuucPce9d/NUG2H9wN4srtf3vY5RDJouQXg+VgSWx8F8AoAfwBwOwCvB7A/gI+Y2eHufvYqx/gNgJs03L9llf1ODFcvoHsCLKrAPSPAFqiV/tJNuNpmUcJAAqyxn6A0wCgBRn0sqIirdBuqdle6SVYBpjTJxFiEvIgqdp01SoxIG6KPh3NGrhFt+holxiBJ1h5Jsu25/7Ebtl3++a+qw+wmgVXaaolCDJo1qLllZjsA+DSAI+qbfgvgBAA/B3AtVL7gxqgimT5nZrdz90uChj8TwIsSbZpk2sFYOg05E8BXAJwB4GIA+wC4F6qorhkAz0aVpfbEMX0dhCWx9QsAXwJwOoALAewJ4K4AHliP90gA+5jZMe7l6P/Byi0z2xfAC+qrJwN4mC/t+f7TzM5A9cbYDZX0evAqh3J339hqstwwSL2vopZWTaU/VuQTYDkL3DMCjJGIzHMHEfQaF+GUT4AxUbiU4JEAa4R5izEliqioaSr9UwKssZ8gATZPzIdKkyysmD41FtkuZ6TYkKPEmMhH6qVgppORnJKMksxBb+fSMuqizpQYcRW2WqJqZQnRCjMLW0xsQo7Dktj6IYCj3P0vI/N6E4BPoUrXOxjAiwE8J2jsC939Uy0ePw/gAwBe6+4/WOH+N5vZg1ClVa4D8AQz+5C7f2WFto7Ki/wrgK/79l+OJ5jZEQA+i8qR3B3AYwC8u8X8Qxms3ALwaFS5qADwwuUvnrv/0szeDuCZAB5gZvu6+58yzzEUSqoSZ82lFfrLWeCeSydMMxMk/3IKMAurbRazgqEEWDNRAow5K5qfJ9I/iX6GvFIk894IK4ReWJpkzmL6QOZIMUWJtaaLUWJc5GO6TXFRYkGSjEs5TLeJIq7mVkg3QgybzJFbZrYOwAvrqw7g0aNiCwDcfZOZPRpVNNOuAJ5uZq9294uyTnZlHrZ8vstx95PM7LaoIreASkitJLeeS/T1DTN7PoA31jcdC8mtIrhP/f8cd//RmDYnoZJbMwDuiYJeuLWkr+mNOQVY1K8SzPYxKmIm3WR+jii4vy4mz00CrBkqmCrdJKsAK22lyJyF8rk6Yd2LEsspwBjYE9SckWKKEosgY8H94qRLTD/FSbKgfphDKUael7ZaohBDZg2CKI5EVTgeAL7s7meu1MjdzzezDwN4PKrUvfsCeFeeKY4nJaNG+BiW5NYhAX0tyq0V+1orhiy3blH//05Dm++jCvWbRZVju2q5ZVVO4EzUCgvLcaQP7JkDeia6i0lvlABrJmqFR4aoVSAlwJrhdsZE+h4VfpFuwqQc9lWAqU5Yop8Bp0kCHS2ozzDoKDGGfhbcZyjttcj5PmR+yFhQyJUQZbA2qyXefeTyKYm2p6CSWwBwDxQgtybg0pHLOxfUVyiDlFtmdk1UeaJAFV64Iu6+2cz+gKqQ3I1WOdw+ZnYmgBsCmDWzPwP4LoD3AvjouNUKpkFU7ZMoAcZQWn0visJWeGRgivJTMKvURf3kX5gAo7xnkNDNKcCoE28isk0CLNFNBwUYIwu6mCbJkrWgPsGQo8QYlErZni5KsjnixynmB1nuR1shRGvyR27ddOTySjWrRvn+mMe14YZm9t+oCtbvDuAvAH4G4MsA3ubufwwaZ3S+vy6or1AGKbcA7DVy+YJE2/NRya2rr3KsnVEVnlvkaqhM7z0APMXMHujuF66y73ByCrCc9b2iirx3cYVHTnIERXcRcMKJQAKsuUWQAGNkCRPZJgGWGKswAcbkXlHTKSxNEgDlL2aiUscVJdZ+KKJNaTWuuphKGVUHK+drwc2HOGZlvjfltoTIwioDJPYzagUkHO/uG5bddtDI5V8lHv87LGV13cDMbIWi65NyjfpvkX3qvyMAPN/Mnufur285BnDlFRJPbtnXkwL7CmWocmvXkcubEm2vqP/v1thqey5GlYv6XwDOAXBe3ccdAPwjgNsBuCOAT5vZHcdFcJnZBgAvTQ22w057pZp0kqj0RluDZWWbiJJ/OQVYTvlXmgCLSiOVAGsmrug8UyNtuALMgwq4dzFNkqW0SDFFiSWGChkpb2QSJ5OUSrkafvajU7dd/s3vqsP4a9/giDGtubpcQogMGNYicmuPkcuNASfuPmdmlwDYE5VH2RXAxhZjnwvgCwB+DOAiVEExNwHwIAAHoqrt9Tozu5q7J33AOMzsYQCOqq/+CS3SKc3s9gAeW1/dBOB1q+1rGgxVbo1+alJ7tMW2E+353P11K9y8GcB/mtnJqJbjfDCA2wN4FIATJ+lfCCGEEEIIcWVe+9y7bHfbM9946QothRDiSgEsqaAXoAp82bO+vDtWL7fu5O5fX+kOM3sBgA0AXlTf9BIz+6K7//ekg5jZwQBOGLnp6e5+2aT91H1dA8BHsfR7yIvd/ber6WtaDFVujb4JU0XQdqr/r+pNsBLuPm9mxwG4F4BdADwCHZJbpdXuUvH6RJOg6K7SUjsXiOjjGeZ1J577PBF1NEuk3Sm6KzFWUN4HE/nHpJ0xgeazMesjUAXQsq4C2cEaYFR0F0sH64BF7ZupsYg2fU2BZOhrCiRDaRFgizStiNg+qyiWqHRmIbqHrTbb5jx33y96NtNknNiq75sH8GIz2xdL6YQvBHDMJGPUMuozqCQcALzF3T+2iunCzHYF8GkA16xvOhnAa1bT1zQZqtwaDTnce2yrK99/UeQE3P0iM/sWqhDBQxvabUBlbhvZ/Wo3LmpPKAGW6KWDAow5IWaI2j5h8kYCLNVTukUHBVjUNmSK8jNlIOJqKpWVAplTgM2Ty7Nwci9zHbAEUZKstBpg1FilpUAG1aYqrTg7I8mYz07UyxVV34shp0wqTaQJURxRH2yejViKxNoJ6Uis0cCYaYeEbgDwBFSZZHcxs53d/Yrmh1SY2dVQpTweWN90EoC/X80kzGwnAP8J4Nb1Td8E8NCAemPhDFJuufvvzWwjqjDEA8a1M7MdASxa4P+dwlTOr//vMYW+B4NWb0x2lG5DjBVVd4ohavswc6ZO4iXAUj2lWwxYgKkIfqqjoCL4JF2sA6YoscRYihJrHiuoOHuXo8Tm58dvKOb8TKslCpEBQ6SxZ7kYS3Lr6miQW2a2DsBV6qtzCMzsWgl3P8/MzgZwQ1T1t/YH8NPU48zsqqjE1iH1TZ8B8IhxNb4Tfe0A4BMAjqxv+i6Ae642tXHaDFJu1ZyGahWC2zS0ORxLdat/OIU5LK6McHHbjqrvguaDhdLCnHMeHDMwBy59Xb2ROUPnTvaCzr4JmO2DuXSTGUIm5RRgUZJDAiwxlgRYcz8dFGAsnUyV7GmaJIOixJrpa5QYwzhJdv1D7rTt8uWXpw8EmGMyyS0hcmBrEbl1NpaCXfYH8OuGttfCkhs4J1Pk0mj22J5jW9WY2e4APo/KY6C+/GB33zrpwGa2HsDHsJQOeRqAe7j7JZP2lYshy63PoJJbB5nZIe5+xgptHlT/XwDw2cjBzWxvVMXkgeqNMnWoA8TCdt59TW8sbfVGBkrIZVy9kYERYEadxBNjBQkw7qnnFEXEbCTAEmOl20iAtYf+MaSwWmEMfU2TpFblDDoOoMZi3JaixFoz7dUkn/Hqr267/NOz/lq1bXjdqOOb8rJvhOgla3CO9BMAR9eXbwngaw1tb7nscTm4+sjli5samtluAD6HpeCdrwC4n7tvnnTQOkrtQwD+tr7pDAB3c/e/TNpXToYst96LKo91FwCvwNILBwAws/0BPKm++gl3/xPbsZntBeDScW+k2oK+HUvF6j8wycSnSRcFWBSlCbC+pjeWJsCcqIdEkVGAOVP3JD2UBFiqiQRYcz/MdIIEGAN74l1arTAGpUk2U1qaJENpUWIMzFcrJyyJsYIOXZjNzIgrRW4JkQEDEFRKZgI+D+DZ9eWj0Vwk/R4jl0+Z2oxqzOxvABxUX92ChqgyM9sFwH8BuEN909cB3MfdmRUgl/c1C+B9AB5Y33QWgKPcPbQG+TQYrNxy9z+Z2StQia37mNmH68t/RGU73wBgV1R5ty9c/ngzOxXAnQD82t33X3b3/wHwFjN7P4AvoarX9VcAV0UVrfUcAIfVbb8G4P3tn5ElxQsjbxhKE2A5D2pV3yvZUbpNYQIs7/ZJN+FO0NMp8zNIL+MnAZYcLN1EAqy5H2I63EqRcZKsi7XClCbZnpxpkl2MEgubMzEdhqgosYWGWluTtImirz8QCxGDhUn9CfgqgAtQLSJ3lJndxN3P3G5mZvsAeFh9dROqlQOnzQZg247ya+PqXNUF3z+Nyk0AwLcA3MvdL590QKtOZN+Fped6NoC7uvv54x9VDoOVWzWvAnA9AI8D8ND6b5SNqFYCOHsVff8NKon1nIY2JwN4pEdYJyPqQTEFuCXAsqD6XgkyCrDytk+6CXPQb0ELAEiAJQdLN5EAa01YlBjQyVphSpNspjRJlrWYPpO+N+AosaZC8otEHY8qukuIdhjiggRY3H2uDnh5XT2F95rZUaPpd7U8eg+qwBcAeNO4KCYzOxHAY+qrx7v7hhXavArAW939N2P6mAXwUixlkQFVEM5KbXcA8HEAR9U3fQfAMe6eWvVxpb4MwNsAPLq+6ecA7uLuf5y0r7Vi0HKrLgL3eDP7LwBPRhVNdRUA56EKUfw3dz93FV1/E8DTUEVp3QzAPqgKwG2u+/4OgPe5+xdbP4lgqLS7IAHWV0pLb4zKXV8gnlcXBRiztDlDaQJsfi4dDjO7Lh3dJQGWaCEB1sj8PCHymaCswEzl4orlM2RMk2S+E7nnrjTJthRXTJ/qqKwosZzF4vPUlhaixxjWInILAN6KKgXvCFQ+4Edm9jZUcudaAB4P4MZ127MAvLzleMcBeJ6ZfQuVNzgbVZbXzgAOBvAQAAeOtH+Fu4+rBXYigHvWly+tn8uRqX25u39qhZtfAeAJ9eWtqDLZbk0cF3xhNVFi02DQcmsRd/8kgE9O+Jg7N9x3AYA313/ZSEsMopYPE1EUJMCGHN1VmgBjDhGjIskYqPch4WWosailpmLGKk2AUamvUemf6SadFGDu6c/F7GxUCm1ZAgyEuOLSCfNGifW2WH5P64Qxso35zY0SYMxYQYclOYvpMww5SixKSnHlJIQQ47G1qLkFd99iZvcFcBKAIwFcGysLrB8CuL+7/zVgWENVH+sODW0uB/A8d39TQ5vbj1zeHZXsYsdv6ms9KrnFcACAX5Ftp4rkVk8wJi2R+o1LAqztWKUJMGqswup7MSKNiiAsrL4XQ04BtkAU02cK3A9ZgDHMExMqTYBFpU6XliYJ9LdYvuqEpQZTmmQTGX/nyRolxkVu5UtdFEIkCMqomBR3/4uZHYUqaupRAG4BYC8AfwFwJoAPA3i3u88FDHc0Kql1O1QF4/dGtSriPICLAPwYwJcBnOjufw4YbzBIbvUGw0xCdDAnzTkFWBSlCbDSiDpJLU2AURRW36s0ARaWmicB1hpGgDERLDNEJBmz2ibzndDFNEkgLgostA5YsiPVCWuL0iTb08UoMWYlRGb79DXlUHXCRHFEFetcBXXJoo/Uf6vt41gAxybafAdVmaLWrLCwXZu+7hzV11ohuSWmApXC1tMC912M7lKB+wQDFmAedVItAdaeoMUGBl0nDMiaBhkX6aI6YW1RmmR7uhIl9rwHbV+34NEv/kPDfPLV5YqitPkIEYKtTVqi6A+SWz0iJR+oSI6g6C4mykcCrJkuCjDmcFQF7hND5TxjJuqWcfVT0k0kwBJjSYC1hv24l7ZaJFXAnTj5Lk2AUdIlSoAxUT5UBM9w0ySZTCBKSmWMEpske6lp1cScReeZYxchBs3aFJQXPUFyqyeYGWZmm89UF5BePa00AcaQc4XHvqZAdrG+V85IMorCBJgRJzN5BWG6iQRYYiwJsBBKqwMWlYGhQvntUZpkHkorps+lN8a86RVxJUQCRW6JFkhu9YjUyb4RtVgYcgqwqPpeXRRgOQ/souhkfa+e7kTDfmUubIVHCbDEWBJgIZQmwBhUKL89UWmSVDQe9dyVJtnEJJ+dpn0iI66i9qmSW0IkWKOC8qIfSG71BSPTmRIw0V0MEmDNlCalGFTfK4DCortKq+9FIQHW3EQCLD1eaXXAoop0F1Yon/ndgEsVJOYTlMLG7TO6VyeMG6yfaZKLLMyPP76NSkvsa9F5IbJhtqYF5UX3kdwSQgghhBBC9IJXfHhu2+UzfvD7NZyJEEKInEhu9YhUaDoTycEVjw6KXlJ0V+/oYvF6RXclOwpB0V2tmyi6K9kR0QblFblntjWVzh1U7DtreiNDT1eBZIiqAca8plTUUQdrgDHv+aiorIWoYnRCDBmlJYoWSG71BDPDzLrmo5eFufROd3Zdevm0+blkk7gzo5gsSXKFPgmwHJRWvF6rNyaGkgBLdCMB1pqcAgworsZX3m2drwh+2JR7WgSfEZbcYrVlFcHPWQMsJ1HiSjW3hEjQ01q4Ig+SWz0iVRjbqZV50k2oekhBR+tR0V1RBxNcMXQduOSgtOL1Wr0x2VEIEmCtmwxagAHdLHKf04vnFGBU4XUiYiZKgHGF4IMWeymsCD41VmE1wKLqulFtogrKD/jHTSGSqOaWaInkVk8wpE+uZ0FEZRGhUlH9MEfrM8w7lIgki0pv5CKBYuTfkA+ASite38XVG8NSjCXAEh2lm0iAJcbKKMCA8orcRwkwLhKIEUXEYBkFGENfV4HMWgSfKuDevTRJJmuBicpijkv046YQASgtUbRAcqsvmGFmNpGWSBz+dVGAGVO7IWN9L06EpFF6YzOlCTCGnPW9ouYcBXPy0EUBVtp2Lg3uPZ/uJ0yAAcXVAcspwBhyrgIZFQVFSZdki26uAknRwTph1FhBMjJqtcSosYQYNEpLFC2Q3OoJZly9rBSMADMPOijxmIiQsPmowL0YgwrcJxiwBOIi5NJN+hrdxaR5MYRFHLH0VIBFpdaXJsAYhlwonwmCKq1OGJcimh6LqYcZdZxEfXZ0TCZEA6bILdEKya3eYMRqicyXRcwJMROVNRM0FsNCUGV6CbBukbN4PYMK3CeaKL2xkb4KsKhaj4wAA8qrAyYBlmoUk76XdaXIoKLqXSyUz5CzTljOiCtKpClyS4jxGFRzS7RCcqsvGDCbWC2Rg5FAEmBNSIB1i9LSG1XgPtFEAqwRCbAY4t736SZdFGBR5BRgDH1dKTJnofwS6oS991V323Z54yVXAADucN/3tZtPkLiKKl0hRB9xAK7ILdECya2eYECy5lYcZQkwo4qXxsiJsJ/8YzwaGeUjAdaW0gQYQ1h6owrct0YCrHWTMLkDkEKFirwZsAALEhgMUQKM+nGBqWHe05UiGbpSJ+zXP/v6RENF1dxixJUit4RowlRzS7RCcqsvmGE2m9xiSNsbJ2plMYXpGZjVcpiaZfPEyozMUXZUdFfUQVJUGsqQBVgUfa3vFSbtmPePBFiio3ST3gowdjwJsOYmUcXHCxNgFD1dKbK0QvlRdcK2NW0ZMZVTXOk4SQwayS3RAsmtnmBInzzOZkzxi2KeOQFljmqJdzojwKgTdGI+M8wnjxBpOVd4jBJgfaWv9b1KK3CfNbJNAqyRLgowdjgJsFRH6SZhxcdzCrCo10srRTbPJ6cAW2zbsL2jirxHSamoRRSE6CJKSxRtkNzqC4Zk5NaCDXhnyURcBX0amFRKbnU5Jh0hX32vqDoRQ47uKi29ccgF7rOKRirXKWYsCbCYZhJgiW4kwBoZsgCjyFgoP4qwNNuM4kr1vUTnMKUlinZIbvUEgyVrbtmQ5RYDIcCcOCBjUim5Yvrpfpgi+Cpw3y26KMBU4D4xVMaVf0qLtCtOgAHF1QGTAGumiwKMIapQfpQs6eJKkePqlj382Z/fdvkXP/19NWbDoFQ9LWLSzGtRmnAacsS9KBRFbokWSG71BQPWrU9EbhFpd1GF4IcMI66iBJgRdcsYJMCGSV8L3PdWgGVeMTBFcTKFDd0qrQ6YBFiiI6IN003GlSI5IcdEZxODBa1g2KeVIq990BHbLl/8558DyCNxosSVhJMYNBl/EBT9Q3KrJ1hYQXkJsBxQkVselA4WtDSjBFg5qL5XM1rhsT05tzNDVB0foLw6YBJgiW6CVh7kvl8kwBrn08WVIgmYfVhUhFxUlJgQ/cRUc0u0QnKrJ5gBs7OpL4OoExEJsL6RU4BREWlBZ3sSYM2Ult5YWn0vrfCY6KaDCwkA5Am6BFgjEmCJ+fRUgDGUJsByRkFJXAnRkmqFtLWehegwevcIIYQQQgghhBBCiM6iyK0eMZv8KSxnxJWiu7pEWPoVAVMnLOqXVi6iaLjRXVF0sXh9ztUbs9YtG3B0F7tLYSJCGKj3q6K72qPortZQr2lQTT9qcdig6K6c5CwEr5pbYsi4IrdECyS3eoKZYSYgLZFZUZE5LyAWHsSQBRhzYMccRDKiaCZoG84zL2rQiWxU7S4uFW64Aixn7a7Sitd3cfXGqNdigfhc9FaAAYGyJEjYSoC1Z8ACLGof1k0BFvNDRtT7kNmndlFclbbCo+gzptUSRSskt/oCs1oisazy/Hw+4bRAfHlZULRQabinV0uMgqpxRRRlnV1HrPBICLAZ5luH6CenAItCAqw9XSxeX9rqjXG1xJgz1JChei3AGKK2tQRYMxJgqfkkm0QFeVM1wKKKvHcRCSfRVxS5JdogudUTDMBsyEF01LrcOftJwxzYcdFmMXTxg7cwl369ogSYESK2i6s39pW+Fq/X6o2JoYLyhqI+O9znPW8aJCVLiG0dtdgCl9qaRgIs0U3GCg+dFGBRr+mYOf/PZ1+57fIFv78IAHC9mz8l3V/b+QQhcSUGjSK3RAu6eI4tVoBZLZE52Jonvk+Yk1QmvZE5uNlKreIXJdLSYkYCrBlGgDEH0DPEa8Gs8NhFAdbF6K6clCbAGLR6YzNxNbC4k8/S6oBFCTBmJx8WUZSejQRYqhsqfS8oYq+LNcBavKbfOeVV29124CFPSg/aEmq1RIkrIcZjptUSRSu6eP4sVsIM69Y1HwhQGYeFsZ6QHPNMrRrqpJARaYR0CVyyPkVfP8BMKqUEWKKfwgRYF+t7DbnAfWkCjDmBj5J/QN7XQwKsfUcSYKnBiCaMACM+YnGRmOk2zGsqhOgODsD1uRYt6Ou58eAwpCO3mO8Kqg4WVXSeOblkwtuJfhgnFRS5xdQAY6K7cn7w+vohp2qJEQX3GSTA8lBafa8ouljgfsgrPALlvR5dFGAMYavmSYA1MmQBJoToGB08zhPl0Nfz3sFhhnTkFiWBmJNmphB8eqQZYj5b000QVpeLEHJRSICVAxPdRRHUDcOQV3iMorT0xr4WuC9uhUcgb5H7rPXW0k1yCrCoaDsJsGYkwLoFtz/o535XCAaHIrfE6hnyOW2vMANStbwZKcUccORMb1xPtMlZJ4whKpqWWMCQIqqYfs4vC6puBVN03oNOrAlzNcuk0AbVkOOESj8FWF/TG0sTYAw5C9xHphx2cZXHnCtcSoAlmkiAJQYjmkxZgN3ybs/bdvnC86qC8gsNv/BG7TOi9rtCDBfTaomiFZJbPWI2cW7NFZQnorKYg1FGOBHn+TnTJKNWb4yqAcE895yUJsByEnUSnzO9UQKsmb4KMIacBe5LW+ER4CK8uijAGLh6axJgbecjAZYajGjSQuje8m7/uO3yz08/N9k+7HucOK7lRLVO7sWAkdwSLejruejgqCK32heUp0QRs/POGCVGiTTmQJM4qt06F1MnjIEplB9FVP2UIQuweeLJzzBPnugnpwCLojQB1leiTtL6usIjEFjjiyCutlBZAoyBkkmFCTCGOHmTbiMB1kxpkVJR+7niav4JkQtTQXnRjr6eZw6OquZWog0TKUXkwjHfOcyS0l2MEmOOtpg0SWqFtaw1nPJJhZwCjDqAzkgXBVhUgXuGnAJsyNFdfS1wT783Mq7yGPXDQVhKasYVHpnnXpoA41Z4zBm9RMyngwKMGiooio6B+X7hImfjJHwIGY/thIjAlZYoWiK51SNmE98FUZFSzIFLWDphcVFiMbW7uDbp+TBQCwDMlfUrSU4BNkeNlg9GgDErjXZxhUcGCbBUP92r71XaCo9Aeas8RkWoSIClBgtpIgGWIOx1J8aivseJmpnMa7oQtL+MgnleQhSHIrdECyS3egJTUJ45jmK+T5ga3ZQoIkKcOhklFpQmSUV3Mb82bu3nL3dDFmAMTBF8CbBuIQEWRBdXecyYdheVkkoRJEIYqDRsCbDm+XRQgFE/SjJRmJRsS78YnAATYrgocku0QXKrJxiAdbPNO14uMok52GL6iWmTeEoAgHlCkjHHq7PEgcvWoCgx5qB2hojumpuLOXHk5hMjI7nwf2asdJv5rflyO6MEWJTAmCF+sZUAS4xFnOTnjO5iKE2AMVAyJXAblrbKY04BxlBaSmrWWlASYM3z6aAAi4I6LiH2u1ErcwvRTwwORW6J1SO51ROqyK3mHSYnrtI7XU5uxYiQMJGWcWXGeeYAiEq3ZNp0L01yyDACbF3Q1/I8Ia7MY15URoAx82HIWUA4p5TqK6UVuGfHK02AMRS3wmPOiDwJsEaGLMAYuB/d0uKK+76jpiTEYFHklmiD5JYQQgghhBCiF/zhF9/cdvkvf/ojAGDPfQ9fq+kIIYTIhORWTzCkC8oz0TnMj3tR0VSp+QLAfNDqjdxY6TYzUXXCiILgTAQY84M/tX1mY1I7GZgfZKLSJLsIE901wxS+C4JJXWTgosSYSI+YZdSHvER6aamLOVdvzD0eVdst4+qNXYzuYuAi7dJNoqK7GMKiqYixhhbd9dl33W+72456xPcb5hMUYan67UK0w6BUEdEKya2+YMC6hDBhjhMouUXkQkeJtNIkGVdPi5hPUJ0was6EuJqbCyrKyqR2BtXTiqq1wbymW0JGykvOIviMAJsljvq51EUJsBx0UYBxtd/KW8GxNAHGELV9olZvjEs1TTehBBjxWlDvewmw5vlk/JzOzMaYq0hRL0T/MLgWXRAtkNzqCQbHusRB4gIhpaIit5h99wIRycFEOEWVv5gl+mEkGXN+FRZJxhRVZ1b4CSqUzxWUTz/5WeZAM+gAMepAc66DB6ylCbCcxeslwNrTRQEGlFcvKmcB9ygBFreCYdCKmxJgiQmFNImLWqNe93Q/URHcjLiaTS1JjsAf+Dp4PCFEBA7AFbklWiC51ROYgvILVLH4mF/uOJFGpOYRMonJdppnpB1zIMWIq8Ik2da59FhMP8yPlkyU2CwRJcasFBkW2Ra1CuSWfCsz5iSnAKMgpiMBJtqScwXHqOL11AqgGQUYY0uiPj85BRgDdZzUWwGWbkMtcBQkwLaN2TAx5nWfXU8IMOJAKSp6XYi+ooLyog2SWz2hqrnVfNgxEySumLTEKJE2S0gORqQxwok5v4iKuFoXJPbmgtIbqYNsQpJREXKUSEuPtYXIFQz7FTVjXiI15y1lHfhGCTDmZGaG2WsVJsCGTGnRXZFzilrBMefqjVErgC4Qr0dfBRgDl45algBj4ORommkLsH2ve7ttl7dsqnbgTa/JuvXpHcv6HdYn2zD9UCmQHYzckpATUTDnmUKMQ3ILgJndD8BTANwCwFUBnAfgFACvcfdzW/a9O4B/APAgAAcAmAdwNoAPAnizu29t0/8S6bRELiorPRIlk9LdYIGJyooSacxBEvHc54ltuI44KKFSDilRFCPJuPkQrzsRvMSkHM4SoXazTHpjIpqxasNEthFtCGvHbEObGW4E2KwTdbkIcWXE5yJnCiRzujfk6K6cAqzqK1+R+5wCjCGqvhf13AsTYAxRrxdD2JyZHwWYjRiUjlqCADv60Z/YdvmC312Q7IeJuFq/Y1pu7bBD+rRqZl3Q+0cySfQS633klpndA8BjAdwWwL4ALgFwDoCTAJzg7pcFj7cewLEAHgbgYABXA3ABgNMAvB/AR50K7wWs+uJ5CIBHATgUwN4A/gzgLAAfAnCiu9O/eE9jWwxabtUv0DsAPG7ZXQcAOA7Ao8zsoe7+2VX2fwCALwE4cNldt6r/Hmlmd3P3v6ym/yuPBayzhNwK2hFShemZtMQg4cSlQMaMxUW/xfwqFxXdxbxejNxiIq6IkhSYYwrcExFpc8RYTCpl1EqRTD/cAgmEJMtY16OvB9Cl1QCTAMtHF1d57GKB+5wpflErPOYUlhRBEU5DFmAMTMrhjjsRcotoQx0rDHjFaCH6WnPLzHYE8G4AD19219713+0BPNXMHuDuPw4ac38An0AVwDPKNeu/ewN4gpk92N0vTvS1JyrpdOSyu65R/x0J4Dgzu7+7/ybR19S2xaDlFoDnY0lsfRTAKwD8AcDtALwewP4APmJmh7v72ZN0bGY7APgMKrF1BYDnAvgkgPUAHgPgJQAOB/ARAHdv+0QMjtlExAcjXRioFWwYCVSabGOkVJDcWpczSozoh4miS63GyY41RwQmUW2IA8R164g2hABbR5i9zUFRYpuJ8DfmRy3u4Djdz5CRACuHnCKpGi9fqldUfa8uCrCo+l6lCTCGsM+qBFjzdIhfuXbceYdkm512TournXYh5BbzAxb1o5t24KJ/OHqdlvgeAA+tL18E4AQAZwDYC8AjAdwawPUAnGJmt3H337YZzMz2APA5ADeqb/opgHcB+B2A6wN4EoBrAzgKwCfM7O7joq5qr/FpAEfUN/22nv/PAVwLlU+5MYDDAHzOzG7n7pc0TG9q22IiuVVLnh9M8phSMbN9AbygvnoygIeNhOT9p5mdgWoj74ZKej14wiGeBOAm9eXHuPvHRu473syuAPDPAO5mZvdy95NX8zwWMeSL3KIkGdGEOSihhFPG57WOSpNMj7VAVK9nBBgTtUalfxIHUlR6IyO3mF/GCSk1R6QuMhFgW6IkGdFm69b0nJl+qFRKSsgpuqstUQJsnuiHkykSYClyrkSWNb0xY4H7Lq7wyBD12ShtRc4hCzBmlUMm4mrnXdMCbJdd0qdV64i0xKhIcCE6h/UzLdHM7oslmfMbAEeMRjeZ2ZtRZZM9FsDfAPh3TO4elvNSLImtUwDc3903jYz5FlQZZrcAcBcATwbw5jF9HYclsfVDAEeNZp6Z2ZsAfArA0ahSH18M4DkrdTTtbWFkiuXiYJcAeIi7n0I/qFDM7DkA/qW+eqi7/2iFNq8F8ExUZwv7ufufJuj/TFQv7mnuftgK968H8HtUoXcnu/u9J34SIxx8yKH+gU98qU0XAOKiu6IipaLGovphIpyC+onaPlxNsmQTSrZxNcmIX+qJ50UV0w8quB/VD7Mq5Waiwt7mLekNvZkocL95c/rdumlTWqhsuiLd5opN6Se2ZVM6BX8z0c/Wzel+tm5J9zO3Nd3P/Nb0c58nwgwX5ol+iDbMiVxUgfu+CjCWKHkTFd0VNR9GqMQ9d+YEPd/2YQRYlKiPSgsv7/XKF1HEfHaY+Vxx2RXJNtc8cJ9km7322jnZZuedCZG2nvlxKtkkq9wa8g9YpfG0e9oP3P2Waz2PaXGzQ27q//WJj6UbLuO6Bx1c9HYxs9NQ1agCgHutVPLIzHYG8L8ArlPfdIi7/2SV4+2DKrpqBwCXATjQ3c9fod1NAfwYVVjKnwBc093nl7VZh6oe+d6ogusOcfczx4z5CwC7Athc93XRCu2mui0mTUvcDVVU05Pd/d0TPrY07lP/P2clsVVzEiq5NQPgnqhyQ5OY2YGoxNZiH9vh7lvN7NMAngDgrma2i7tfTs59+zHhWGftC1FHiSImoigq6jRMpBFNcoq0qOeVU8gxkixKtjFRYvNMxEyQSNs6nx6LOajdaYcYSbZph5j5rCf6Wbc+3eYK4tfqGaYo/4APspnorqgVHsNW8Bs4fa3vlbPAfWkrPEad6Odc4TFuRc50E2qFx6gFIojXa8ed0hFXV91jp2SbPa6aPmXaZWdin0qceTE1To1YTTwOImJvuLtmEUzfIrfM7AZYkjnnjKvl7e5XmNnbAfxTfdNDAKxKbgG4HyqxBQAfWkls1WP+xMy+AuCuqAq63wnAV5Y1OxKV2AKAL68ktuq+zjezDwN4PIAdAdwXVRrkNnJsi0nl1kmoVv17h5ldy93/KfUAMzsGwMvd/fAJx5o2t6j/f6ehzfdRrW44iyqHlBV6o8+1qf/voJJbO6HKU111yqcBmKVOfJqJSl1kVktkCJNJGU+I49I2Y4QTQ2nRZoy4osRekCRj+pkjTjCiJBnTZtOOhCTbOd3P5ZsIcbUj0c9O6W+Fy3ZIW7vLCZHGFAfesolpkw6R22rpCDDmZHg+KNJjYS59QrgQJq6CihgR5K65FUVU5JYQ06a0z0/UZ2fHXXZMttl373Ra4p5XSY+10w7p78QdiPqcjLhiDmtnCCklRGn0sObW0SOXP59oewqWhM49UNXoXg2j9bxTGXenoJJbi2Mul1uT9vX4kb7etez+qW+LieSWuz/EzF4D4B8AbDCzawN4iq/w05uZ/R8ArwRwh0nGyIGZXRNVFBpQhc+tiLtvNrM/oCqUdqNx7VbgoJHLY/sH8MuRyzdCC7kFOGYDIreiKO2LKet8mAiwoJRMBuq5B0Wt5U0RzRj9RkWkZRRpRJuthEyiJNnWmDZXbE7vbi67Ij3njZelf4W/7HIilfLytEjbxLS5gkil3EKkUhLheHNMmiSR3sgIMKZkARMJExXdRRUwz0xURBE1VlRaYk9T8xhyriBbWmoel7YZ89xzrvTHjLXnXrsm2+x/jfT35s7r023WEwvCzDLiKkhK5Y3uEqI9jl7W3LrpyOXUuf7pWAqsOdjMzJkDsnZjfn/M49a6r9Oxim0x8WqJ7v5sM/slgNehMnPXMLOHuvsVAGBmt0BVgH3RzBmAsyYdZ8rsNXL5gkTb81HJratPof/REMEV+zezDagKwjWyzz77YBbpE6ih4tRKZBkpy/1RFCcIM86nNLFHpYgy6WnMAgCeFk5RQm5uIb1L2jxPRFzNMWIvnYayeS5dY2Xz1ph6bNQKocRX/DxTl4upn0fMh1qpNuO5VYlpkjmjYaIClKOmTEWWBO2ao547Ja4ybp/StmFpz30cj73L9g/+5HfHf4EecNXUqUCccMpJF+csxCqPp/czzuYe7+4bVjNAC0aDXn7V1NDd58zs96hqTe0K4JqoVjekseqXt+vVV+eJx/96zFxXuu1Xib5+hyUhdYMVhNTUt8XEcqse7E1m9lsAHwRwLwBfNbNnA3gGgAegOjU1AGcDeBmAD61mnCky+jPOprGtKhYrUe7W2Gp1/Y9WuZyk/xWJSEvsK+ZEkSLRSGkHSRYUyRH2C2nG+RhhDGY8/X3AzHlmIW1UmLFm5tOfwdn5dBrgzNbUVzYwsyXdxubSYxnRDzYTbbYSKwDMpbePE0XwfZ4wYEF2i6qJk1E4DT26K8o8hKVSlmZmmG6Y+US9plEF98OME1XoKWasKW/nx65w29GXfnBs+4t3PyTZZxejSXKW5BAiih6+b/cYuXwh0f4iLBVS3wMTyi1UTmHR8Vzs7qkDw9Gi73uscP/obY3zr4XUJQD2rOewK4CNq+lrZG4TbYtVyS0AcPdPm9ldAHwGwK0AfL2+ywD8HFWO5AdWSlksgNFPTerIe7HtJEfo7Kdyknk0447ZhXIETl9FSBQ5tw8jQrh+iMK/GUUR87yMqQkUJYoWCMFDtDFGJhFtGHkzs3Vzus2W9EpT2ESshXH5ZckmC5dtTLaZvzTdZvMl6TZbN6bns2VjWlxtvYxoc0X6tZgjVoqc28ykHBKpi1uZdEKizTyRuki0YRh6VNbMbJC8IfrJucIj87xyrlzZ1znHtWEWBsmZ1sq/Vy/98pfH3rfH3dKnQ/M7pdMbfV06bd5n0pHFVLR4B2WbEAw5S7dkYjSAhfhF9ErBL7sXMN5q+ttzpL/Rg/Kpb4tVyy0z2wtVcfnFb3tDJWheBOCfly8jWRijGzmVd7KYu5I+E1q5/52WXV+p77H916GTG1ID3uyQm5Z35C+EEEIIIYQQQkyP89x9v9U+2MyegKoMUWsSaY+5z9eZ8dbKIUxl3InllpldHcBzADwVwC6opNafAcwB2AfAkwB8EsBP46YZzmgY3N5jW135/osaWzX3P05ujY49Sf/bYe6YTUYdcv2URGmpZ9RYUXOOikxiYMYKityi+mEinJg5MxFOQVFZRqSDMal5RqSwGRFxhc1ExBWRUudExNX8ZUSbjenorq1ExNWWS4l+Lks/9y2XESshXp7ezluJgvJUxBVTLJ6IuJrfwqQTxkRcMZFbUSzMERGW68r7tZeJlIoia0TRbFkRPKVFtoUtABD0mvZ1zpNw6W/H19Xa7VdnJx+/7mp7Jdtgp12STXx9OrqLScmkUrcU3SU6h61VneQnALhNUF8bll2fJKhmeZtLVzH+pOONfnGtNN5GLEViNQXtrDTm8v6mvi0mkltm9koAT0MVrWWoJvhaAP+GqiD65wDcEMA3zez+7v61SfrPhbv/3sw2ogqNO2BcOzPbEcCiBf7fCYYY3UsegCuviohl9y0ySf8r4JglTuRT5BQzUUSlnlFjZa2rFPO8olL8wNRnYgI2o+QWJZwImUTUFmLEFSWcmNpLTBtCSi1ckZZAC1ekJdDC5ek2WwlxNUcIJybFb8vGIHFFSKl5YpXDuc3pNvNbCClFiCtGgOWUUoxwyknkfKJEGbOtcwqwnDDvxSgpJdrDSO+cqbhMavQ4AXbWA47adnkxVXvTX8fvOzb//o/JsXYkjhVmdkuXz7X1OybbYDaduki9Ev2rXSR6jiPzAlZ5uHjkMrNA3Wibi8c1amAjqqCjdQD2MLPZREZdaryLsSS3ro4GuWVm6wBcpb46h+0z00b7n8q2mDRy6x/r/5sBvBXAK919MUrpUjO7PaoaXLcHcIqZPdbdPzzhGLk4DcARaLa0h6Oq9g8AP5yg79GlLW8D4Ctj2i2OvQktI90MQTW3elqfiaIwURS2DYNkErV9gmpKhQknQm4xhbypNlFSahMRTbUpLdKYfuYIcRUlpeauIKKggiKlJK7aU5q46ipR4iqnBGKishhyRpIx5Kw3xlDc9ulpvTHme3zTn/+abDOzQ/qUaXZret8zs359sg0jt7IuoiBERtZCbrn7bafY/dkA7lJf3h/A2OCfWg5ds756GYDfTzqYuy+Y2bmoAo5mUaVb/rrhIdddNtflnI2lgJz9E31dC0vu5JxlKyUu9jXVbTGp3JoH8C4AL3P37QZw97+Y2V1RraJ4fwDvN7PruPu/TDhODj6DSm4dZGaHuPsZK7R5UP1/AcBn2Y7d/RdmdhaAg+s+XrW8Tf2C/W199cvuTlRkbhw0WWQ6pwRiyCmKGDopk8LGIvohhBMyRlOBWRWOkVJbmGiqtHRxoh9KXBH9zDNSipBJ81cQxdAJ4cSMxURTcUXVGeFUlrjyeUJuSVxlIyoqqzRxRaV6dVBcUWOpUH7rsbIK1Ixpkkxa+Oa/plPr1+2cjrhaRyzowcgtW0dEbikqKw+Sf9npYeTWT0Yu3xLAexraHoolOXTWCnJokjFvODJmk5C65bLHrdTX0SNtmzLzmL5G24Zvi0nl1o3d/edNDdx9s5k9CMDrUaUwvsrMruvuT51wrGnzXlQ5sbsAeAWWRBMAwMz2R1U/DAA+4e5/mrD/twJ4I4DDzOyB7v7xZfc/E8C+I21bYfBkPZ+wVMGcUUcMOaOpSpNSRNg+JZyC2oCRUlGRUnMxcouRSb6FiZQi2jDiihBO84RMYoTT3CZCODERV0zdqQGLq5wr/Q1ZXJVYcyunuIoip+SIEldRSFy1HyunuKIitzal9wdbLkvv59YRAsyZqHMiKmuGkFuSLqKfWB/l1udHLh89tlXFPUYun9JyzAeOjLncQ0wy5ucBPHukr9e07GuRqWyLieRWSmyNtHMAf29mv0MVtfQUVAXoi8Hd/2Rmr0Altu5jZh+uL/8RVbrgG1DVFtsI4IXLH29mpwK4E4Bfu/v+KwxxAqrnfRMA7zOzfQF8CsB6AI8B8JK63Rfd/eSAJ5SWWx2USVGiqJPCidmGQSl+zHwo4UTJrSApFSWuNhMRV0xUFtHPPBG5NR8knOY3M8IppjaVxFUzUVFZQxZXuSlNqFD9dLDIe9R2Lk0CMZQ25y6KK6YN8x3N7MOY9HvqWJP4nObczkKUhnu/3tvufo6ZnQbgFgBuYGbHuPvnlrczs50APHHkpo+2GPZTAN4EYAcADzezF7n7+SuMeRMAR9ZX/4iVo7K+CuACVAvhHWVmN3H3M1foax8AD6uvbgLw6eVtcmyLiVdLnAR3/xcz+y2Ad09znBa8CsD1ADwOwEPrv1E2Aniou6eXUVmGu28xs/sA+BKAAwG8uf4b5QcrjLkqDEimJWaVSQRh6XKUBAp67lFzjoqCovohZFJpUoqoW8HMhxFOYeKKaUNEZTEH2cxY1MH6FcScidX3JK5SY0lctSUyKqu0dEKGLoqrKCSB2lPanKPEFTNnZh/G/IgzuwNRnqBFEfwrtymrHpsQuehpQXkAOB6VcAKAt5rZHd39N4t3mtkMKk9wnfqmk9x9pbQ+mNkGAC+tr77H3Y9d3sbdLzCzt6DKFNsNwIlm9gB33zTSz54A3gds2+AvX6nwvLvP1QFBr6vbvtfMjnL3v4z0tROqFMNd65ve5O4Xrbwp4rbFSkxVbgGAu3/IzP4w7XFWQx1h9ngz+y8ATwZwGKoK/+ehCpv7N3c/t0X/vzSzQwH8A6raWweiqlt2Nqq6ZG9y94Aq8ADc07WMwqKgyhJOcemE+epOUc+LqikVJK6CxooSV76VEFdBUipMXFHCiZgP8dy7KK4Y4cSIK0Y4SVx1i9JqYAHdrIPFkFUCBdXBGrIEikqB7Ku4YmC+65n9E7PfjVpxUuJKDJk+yi13/7SZfQRVUMt1AfzAzN6GqgbV1QE8GsCt6+Z/APCsgGGPR5XadyMAxwD4oZm9A1Vh9uujch/XrtueiirrbBxvRZXmeAQqX/Kjev4/R1VE/vEAbly3PQvAy8d1NO1tMXW5BQDufmqOcVaLu38SwCcnfMydyXaXAnhZ/Tc9CLlVnHCKSrujRFGM3IqLpopqEySliLFKE1fMWJSUChNOjACLSRXkhFNZ4opZDZA6CSGeV05xJZoZeh2sLhZwZyhNXHVRAuWccxSliStmGzLf9QtEIXhqFV5iX1haZKQQpdFHuVXzGFTBaQ8DsBdWKHsE4FwAD3T337YdzN0vNrNjAHwCVRrgjbFyvawvAXhwU8BNnZF2XwAnoUpjvDZWFlg/BHB/d/9rYnpT2xZZ5JbIgcNSEiNrraygKChKgOWrg5VVShHzYUSRBwmwhSBxxUgpRiZFRVMtMOlyGQVYX8UVF7nVPXGlqKw85KyBBZRXwL2vKw8ydFEClTbnOClVlrgaN59HnPLtbZc3X1qlE77+gBuM7YeJGgbS+8uZoP2K5JYYLta7mluLuPtmVPWv3oOqJNJtAewD4FIA5wD4GIAT3D29egU/5q/M7DYAjkUlkm4CYE8AFwI4DVVa4keZlQjd/S9mdhSAhwB4FCphtheAvwA4E8CHAbzb3ZNfltPcFpJbfYFKS8yYTpgzNS8qciunlAqaDxUpRfWTT0pRqYJMVBYjwJhoKkbwMCItrKZUP8UVJZwkrjpFaemE7AlhFwu4M5QmrnKuPKg552kTxbSF7nf+9OftbmvaLzD7MAZGkjHPnThCFKKXOICF/kZuAQDc/RS0WAnR3TcA2DBB+60A3l7/taKWYB+p/1rTdlushORWTzB3WCptLOMKhsVJqaiUw6j0vaCxwqKpgkRaVKQUJbcoKcX0EzOWxFX7sSSuyqGr4iqKLhZwL22Fxy5KoC7OOae4Yp5XzkjEsLpcRJ3GKOGU+h1aiKHT47REkQHJrd7g6YihKAnUVylFtYkp4J5TODHRVMxYlHAKSt9j5A3XT/fEFVP7ozRxxZwYSFyVQ1/FFXvC3MUC7lHbOufKg6UVgu/inCWu4sZq2i9QC5UQUfnMfk4I0YCjt2mJIg+SW33BHUhFDEXVuMoonJixwlL8MqYBclFZQamChCyh0gkJUVSauGJWN5pnJFBGcTW3mXm9Yg6yo8QVc2IQRU5x5VtjxrL1wz1Q62LxdiDuJD5nxFkXxdWQ5yxx1X6sqPnoxxchykGRW6INklt9wT1dFDxsNcCYmls5pRSXThgV3ZUx4ooSVzH1q5h0QkY4RQkwLjWvLHHFREo58fliDsSpsYLEVdSJgcRVe0qLyqLGyrzsfWniKufKg5JtqX4krtpSgrj60L3usO3yed8/D0DiO3/HdJ/M/onZr0huCdFEfwvKizxIbvUFJnIrqhA8E76dM8WvMAGWMw2Qql/FjCVx1UhYqiDTD1GQVuKqmShxVRqliausJ8yBNbCypp5lFFdRRNWU6qtsk7hqP9a053P7a+2z7fK5P7s02Q+zD4sSV33dPwkRgUORW6Id+QpPCCGEEEIIIYQQQggRjCK3+kQqQicqwilnHaycqYJR6YRR0V1RKYdMdFfQnBWVlehHUVmtyfmrd86UQ0VlNZN7tcSoIu85o7JyrvSXNW0z45xLiDoaRVFZecZiKC0t0YljBSG6iNISRRskt3qCu8MDCsoz9X66mCrIpQEGCScqDTCmMH2UTMo5FiecYmRSaeKKWpFJ4ioLpdXKyknWVLCM4oo90c0prqKQuIrop6wUyL6Kq6jPRc6xcoqr0qSUaoCJ0ijrEyK6huRWX3BPRxUxKyF2MZoqTG4RwilIqFCrE1JCJWblwaixcoorZqzSxBUTbZZTXOVkyHVGckZldXV1wuRYgcKltGL5pYmrKLoorqLmLHFVzlg5YcSVZJIQzShyS7RBcqsvuCfFVBejqSgpFTUWFeUTE92VM1UwSlwxqYJdFFdUIdko4VSYuIpLjyjrYH3I6YTUWBnFVc6VCSO3YWkr/Q05Skziqv1YnRRXVtYJbl+jmIUoCYepoLxoheRWX3CHJ0RHmNwiUhfDxFXQaoBx6YTdk1Jcal5MjauoNEAqfY9K8SOiqRhJxqTvMfJP4qo1QxZXOU+qGXKKq0j6Kq5Km7PEVaofiau2UO954ntc0VRClIMit0QbJLf6AlFzi5MBGaOygoRTVOH1sDpPEld5+mGeV5C4Yupg5aSv4ionQxZXUXWwsqa4BdbAyimBopC4SrUp6z0tcdWeNvN5zbfP2Hb5ogsuBAA8du9rhMyriajaXUIMGUVuiTZIbvWIlOTpYhpg1FiMuJqnirxH1XCSuGrsJygKKkpcdbGAexcPoPta5L2vBdwZSlx1MOvr0cEosdKkncRVe/okrph+/v07Z253Ww65JYRoiQPEIbcQY5Hc6gnuno4Y8qgaRfnEVVQUFPe8YgRYVASYxFX7sSSuyqGv6YSlFXDPOZ8SxVUUpa08WJq4yilvJK4yjdURcSWE6C8ORW6Jdkhu9QX3pHTKmgaYU4BJXCXGyieunKjHJnGVGKuD4ionpaUTUmP1dOXByFTBCOjVEnsqrqKQuIpoI3HVth+GSbZz4/dV0P6bqu9F9KPjADFkVHNLtEFyqy94Whb1VVzFRXdJXDXBiKv5LUHF4nsqrvpKVFRWaeKqtLpLXV15MDlW5hpYfRVXcWJG4qrtWAw5xVVp23ktxmp6PxJLKVH7p/n0b6RCiASuQ27RAsmtnlClJTbvVakIJ+IbhRFXUTWlomqA5RRXcWMFFbhnBE9GccWIvZziKidd/DV2yHWwuljAXfWk0vS1oLzEVUSbsuRNF8VVCbL2/93hZtsuX3TO+SHzyUlf97sigPTpVccxLCgtUbRAcqsvuCdFR1Th9bhUweGKqyjhRBVVp2RkxkipwsTVkNMJVQerPUNeebA0cRVZUL48YSBx1b6NxFXbsUoQVwzPOeLm2y6fc9n2xeWXE7Z/Wk98vojEREWLi6HiUFqiaIfkVm9I19ySuMo1Vln9MBIoTjjFCLkohiyuctJFcVVaAXeG0gq4lyaucr4WgMRVuh+Jq+Z+StvOhYmrjHXmGKgfgzLW7ioNCTkRhdISRRskt3qCe1rOSFxFjFVWP4y4osYKEleMJGNQAff29LUOFjWWCrjnmU9h0oEl57wlriLa9FNclVa7K+dKmlHiypjXgvquZ6pupeEKyqfn48RxW2l0UciJMtFqiaINklt9gUhLlLhKjZWzOHtM2l1p4qq0Au4SV3lQAfeAfjoornJSYkF5iauINhJXOcbqrbiK+uwwUcNUQfn0MUeUABOilzgQ9Du5GCiSWz3BPb1qIFXDSeKqdT+UBGKeOyOBJK5EC3L+0jrkAu45xVVOSpNtkQXlJa4i2pSVLidxFdAPMx9iOzN08juR+OGJOXYpLQpKKYciF6q5JdoiudUXmILylNwarriioqkyiitKpElc9Y4uphP2tYB7lLjKSWnphKXNhx9P4irPWN0TV118vSh6Kq7CvqeIfTPzbo5KOMx5nFSabBP9RjW3RBsU9yqEEEIIIYQQQgghOosit3oDE7nFRN4MNyqLGisoKouruVVWVFYUispqz5CLvHexXlRfo6BKm09s5FZZ70VFZaXGUlRWI12Mymrx/vnvX5637fIfNl4KADj8qldZdX9A5ppbRBR8abU3hYhiQQXlRQskt3qCe1p0dFFcRaUKcmMFFWdn5rMlRsjlFFfMwZbEVTmUVuQ9SlxFUVqtrNJEUWnziZVbElc5+qGQuGpPkLjKWUssrOj8mLHud+LJ2932vTveduJ+Jp5P1A9YIb0I0U2UlijaILnVF4iaW10UV3FjpdvMb8kYKRXUTxQqFloOzK+6XRRXUXSxyHtpoqi0+eQUN4DEVUQ/jJRiKO55EYSJq8JWFaTGKkBcXamNZdz3MPUniX4UlSXEeBymgvKiFZJbPcE9La+ixFVY4XVmZUZKFDGF1/MJJyadMAoVec9DaemE1FiFpe+VVuS9r6KotPmUVrw9Eomr1FiFPS+CvoqrrFFiUWKYEVcTjNW0najIYuYYkZiHorKEaMAB4qMmxFgkt3qDJ+VV1tpUQeKKmnPQyoNR4kqrE3aL0sSVVidMzWe4oqi0+XRVXJW3jSSucvTDECWuiqtfxdBhcUWN2dAf8/3i80GRW0QbIYaM0hJFGyS3+gJRc0viKjWWxJWYLkMu4C5x1a35dFFcRdbc6qu4Ki/dUuKquU1P0wCnHI13hwP223Z508UbqyFbfs9w6ffp40hFbgnRjKugvGiB5FZPcE/LotKKqlOCJ6iNxNUwyRmV1cU6WDnF1ZAZsriKInI+ElepfsoSVyq8nmesroirK/ez8lgnH/eAbZd/+cXTV93PlSCO7aIEmBBDxaG0RNEOya2+4J6UV1RR9ahC8Ezx+qCorNLEVRQSV82Ulk5IjdXBAu5RDDkqa8iU+Fr0VVzlrTslcdXcT1CUWAfTALN+bxLPa2bdbLoNk5a4EDPnBcVuCdGI0hJFGyS3ekRKXpUmrrjoru6JKyYqS+KqmdLEVVQdLBVwzzQfpRNmmU8Xn3vseBJXbduo8Hp7hiyuwr7vmO8youYWczyqSGchmpHcEm2Q3OoJHlRzK2daYs5+opC46h8q4J6az3BFUWnzkbhqP1ZoXxnFVXkphxJXbcfqUxrgskb5xsoI852ohEMh2uEOLHhZn33RLSS3+kJUWuKWnJFS+Q4DctbBEs10sQ4WQxfrYElclTMfias8Y7F9lSau8kZuBaXUqfB6ewqTo1nFVdDrxX3fqVi8EKWgyC3RBsmtHpFMSyxMXKmAe//oorjqawF3iaty5iNxlWss8tRS4qoZ1a9q7kdpgO3JKkejUppVLF6IHEhuiTZIbvUE97TkkbhKjJVRXEXNOWcx9NLqYFFjSVzlmY/EVZb5dPO5l1XfKnK88lIOJa7aEiWuBp0GmFFcMWNFFZRntJXNpMdijo+FGDL6iIg2SG71Bk/KIomrPHRRXEUx5ALuXaQ0WVLafCSuco2VL02QHa+0bU2RUVypflV7ihNXGWuk5UwRjeonKuVQsV1CjMcBuGpuiRZIbvUE9/RqiKWJqyi6KK5KIyoqixpLBdwT8ynrpFriqv18uvncuyeucheUH7S4Kq1+ldIAmyksmoqhjfzb/an/vN1tP3vY0Q3d5Es5nCWel6K7xGBxpSWKdkhu9QVPy6vSxFVpKw/mFFd9TSdUAffUfMqSSQwSV81087n3U1zlj9wqKxpG4ioxVtT26Ws0FUNh8m+y7sb3F1dzKwbmqTOLRAnRReR2RRu0sIcQQgghhBBCCCGE6CyK3BJTQVFZeVCR9zxjdTEqa9iRSUN+7sONyopNS4yJqolb8S1fVJaKs2caa8A1rqjtHFwzs+n7PKqgfE5UvF70karm1lrPQnQZya3e4MmdWGlF3qMobT6l0cUi7xJX7fvpplCRuGqCWfUrclXB9FhliSs+LTGfuOriqoKlFWdXjauAsUpLFcwpUBfbNozJbJ9O1srKWCpCiCgkt0QbJLf6gqflVRdXJyxNXHUxKosaqzBxxSBx1b6f2fVMPxJXbfvhpFT3oqkYShOEAMorzs6QU1yVVuOKGyxmLEVTNbMGUqqRMfPZeMILt10+/9s/Ts8n6LUoL75LiO5RmiMW3UJyqyc40vJK4qocSivynnN1QoasqyX2VFxx85G4attPX8VVeQIsThaoOHtqLKUBNo5VmrjqYjRVYQI1TBCqlLEQ7dBqiaIlg5ZbZrYewFMBPALAQQBmAfwSwEkAXuvul7bo+1QAdyKaPtjdT1rtONHkrINVGmHpe4WJqyj6m07YV3FVWpuyxNXMupxRa/0UV1lPGgPTvFS/qj1R0qXE90fIWIqmak1pKdZCiOnjAPq+EKiZ3QPAYwHcFsC+AC4BcA4q/3CCu18WNM6vAFyXbP41d79zQ19XBXA0gLsAOAzA9QFcBcBGAL8B8E0A73b37xHz2hnAUQCOBHArVA5mDwCbAPwewP8AeL+7f5mc+5UYrNwysz0BfBHA4cvuOqT+e7SZ3c3df5l9cqvB05FQfS3gzpAznZBBBdwD+gmKTOqruIqLKOredpa4ytVPWdEykQXlVb8q2VHMWIqmaqYwOUqNFZXiFySuovaFDEw/xdXlEqIw+hq5ZWY7Ang3gIcvu2vv+u/2AJ5qZg9w93Q+dSbM7LkAXgZgxxXu3qP+uxmA48zs/QCe7O6Xj+nr/wL4DwC7rXD3egA3qv+ONbNTADza3S+YZL6DlVsAPoJKbC2gesHeA2ArgPsD+FcA1wPwGTM7zN23tBjnAwCe0nD/FS36XsLzyashi6sh18HqorgqrWC6xFXAWBJXmfoJEkClFV0Hhl2/qrA0wN5GUzEUJkcZckZTZU3pDau5lSbqJfW+h7eIwdJXuYXKNTy0vnwRgBMAnAFgLwCPBHBrVP7hFDO7jbv/NmjcCwA8KdHmwob7DsKS2PoFgC8BOL1+zJ4A7grggagy4B4JYB8zO8bdV/qSOgBLYusPqAKNvgfgfAC7AjgClfzbCcA9AHzJzG43TpatxCDllpndG8Dd6qv/6O7/OnL3m8zsfFTy6yYAngjgzS2Gm3P3jS0en5XSxFVOSksnlLjKNJ/CxFVp0k7iKs9Ypb03+lp0nR1PaYAJosRVYduHQtFU7cmacpgei1lcpbiIq9n0j1xCdA33fhaUN7P7Ykls/QbAEe7+m5H73wzgHajSFf8GwL8DeHDQ8Je7+6daPN4BnIwq+Ofr7tvpxxPM7AgAn0Ulru4O4DGootRW4psAXg3gc+4+v+y+d5vZv6ESaH+DKiLseQBeyk52kHILwHH1//MBvG75ne7+UTN7PoBD67Zt5FYxdFFcqQ5WOXRTXGWUdlkFj8RV234krhL9FFZ0PbImTk5xpTTAgLEKE1eKpgogo7jivuuZ56VIKSFysL076QUbRi4fNyq2AMDdF8zsqaiioK4D4EFmdlN3/0nGOY7jue7+l6YG7v6N2p28sb7pWKwst97s7i9P9HWWmT0JwGdG+pLcGoeZ7YLqjQMAn3b3rWOanoRKbt3EzA5091/kmN9qcffOySvVwWqmtKisLoorJn1PEVcBY0lcZepnuOIqTCgAecWV0gDbU1pR9S5GU3VRSnEdJZvEpfGn+ykuukuIDtI3t2VmN0DlFADgHHf/7Ert3P0KM3s7gH+qb3oIgDWXWymxNcLHsCS3DmnZ1+cAXIYqVfE6ZnYVd7+EeeDg5BaqVMPFvNHvNLQbve8WqHJMV42ZrQOwMCb/VLRAdbDaj9XX9L3SxFWUBJK4yjOWxFXAfAqrXQXkFVdKAwygsGiqTqb4MWSNppru63X0y9++7fLcJVVlkJMefNcV21bTKevHViGGTA/LyR09cvnzibanYElu3QPAS6Yyo+lw6cjlndt05O7zZnY5Krm12J/k1hgOGrncJKxGV0m8UYvx7m5mvwVwTQBuZucB+DqqsLxvtei3aPqaTthbcZVVksWcPDA1MiSuEmNJXOXph4gcYBiyuMqaAlh1FjNeYWmAiqZKjKVoqoiOYvpp8Zp+46fbL3TeFMEVVxsvpJswVHRedA33/kVuAbjpyOUfJNqeDmAeVXH2g83MVqhxNSlXN7MvoapftQeAv6LyHF8FcIK7n9uy/0VGn+ev23RkZvugWkESAC5HVRSfYohya6+Ry00b6vyRy1dvMd7fjFw2ANcC8AgAjzCzNwF4RlM0l5ltAJFnerWZfC+lxFVqrC6Kq7KkS3GrHEpcte4np7jKuZpkF6OpGDoprgLPLHubBqhoqkRHGaOpJKUaCU1FRvPng9lndFEUMamUQpTGKrN79zMz5pHHu/uGVY2wekYDa37V1NDd58zs96jqbu2KKjjmdy3H3w1LJZmAyoXsBeBWAJ5tZv8K4EUrFHeflNEVGU8O7OuUSTLfhii3dh25vKmh3RUjl3cb22o8i0tlfhmVvbwQwL6oQgxfDODaAJ6GykY+bxX9D4K+FnAvTVyVJpO4qKyynpfEVfuxOCmlNMC2/ZQmHYpLAQT6mwbY12gqpfi1pzQpFZwq2PgZCis6L4RoSw8jt/YYuXwh0f4iVHJr8bFt5NZ5qFIdTwfwJwA7ALg+gAegqos1C+AfUQXjHLvaQczs9qhWegQqv/K6Fn0dCOD5Ize9epLHFy+36gLw10k2bOZnIyF9o3sw9uMz8cfM3R+3ws2/BfB2M/skqmUwD0JlTN/h7udMOsY0yBmVNeQC7qWJq5wyqTRxVVrR+S6Kq7hIKYmrtv3kjKZiyCquyDkrmirTWIWJIkVTtac4cTXJfBpeE06Mp9uooLwQ7enh52g0SKYpsGaR0QCb3VuM+0gA3xoT9bTBzI5DVQB+FsBjzOyL7v6BSQcxs2sA+CiAxS/ZF7v7b1czYTPbFcAnAexS3/Rmd//eJH0UL7cA3BpVTmgbdsbSm2njstubHrPIZS3HvxLufqGZPQPVSgCzAB4M4JVj2m7AlZcPXZGDdtg5+U1QWjohNVZP0wnLW3mwe2NJXAX0Q7zni6tfJXGVGKusaCqG7CmAhYk7RVMlyCjJJKUSrIWUauxn5fl8/qVP2Xb58nN/WTcdP/cu1tzqYpqkECncV52WeJ6777facc3sCahKB7UmkfaYzdy5+38n7n+rme0J4BX1TS8CMJHcqmXUp1GlTwJVOuJrJpzqYl+zAD6IqjYYAPwQwP+btJ8uyK1oRsMB9x7b6sr3XTSFeXwJlXDbCUvLgwohhBBCCCFWyR1vcv1tly+dYwIlhBAD5wkAbhPU14Zl19nAmpXaXDq2VQz/DuC5AK4K4EZmdqC7Ny24tw0z2wnAf6IKRAKqrLSHrqYAvlW/wJwI4G/rm34G4Bh3n/gLvHi55e6ngokF5jl75PIBGB8VdsDI5f8NHB/AtoJxfwawH66ci7sqzCwkMktF3tuPVVqkVFTKWM6xFJUV0I+ishJjKSor0Simn8JWCwTYFCSqo3SbIacKFpaWqPpVAUw54mpighYY6WJBeRWLF32lhzW3Lh65zCxSN9rm4nGNInD3TWb2PwCOrm+6Iaq64Y2Y2Q4APgHgyPqm7wK4p7tPnO1m1QHe21ClUQLAuQDu6u7nj3/UeIqXW1PgTACbAeyIytC+a0y7UXt7WvQkzGw9lt68F0f3P00krlLzySnJ8o0lcdW+H+79XFr9qrLE1UzQ9lFx9oB+urhaYNWw5WRqMkpLhuJSBQdcv0pSKkHO4uxh3x0qKC9EDhbWoOaWu992it2fDeAu9eX9AXxtXEMzW4elFL/LAPx+ivNaZDRDbc9U49phfAzAMfVNpwG4h7tfssrx34Qqcg6oFuE70t1X/bwHJ7fc/XIz+zKAewK4r5k91d3nVmj6oPr/mWx43oQcjUqwAVOQZytRWpH3KEoTVznFTF4J1L05F1fovK/iitnOiqZqPZ9O1riKlFLpjrh2hcmJvkZTdVFKMWQVV6VJKYbCXvecxzcMPSyWLUQYjl5Gbv1k5PItAbynoe2hqOpxA8BZq0nxWwV0pFgt3z6EpfTBMwDczd3/spqBzex1AP6uvvo7VGLrN6vpa5HBya2at6KSW/sCeAaWFT4zswcBuMVI24kws2s2Gcd6VYHX11fnUK0w0A7j5FUEpUVl5Y24yhgl1kkJlO+9IXHVvh8mIk1pgKmxuhdNxZBVXGWWF4qmak9WcdVFKcVQmrgqTEqFve7EvjlnJFnOovNCdA7vpdz6/Mjlo8e2qrjHyOVTpjCXK2FmOwIYjVo7u6HtLID3AXhgfdNZAI5y91XVJjezf0HlYQDgD6jEVuuAokHKLXf/LzP7IoC7AfhnM9sFwHsBbAVwfwD/Wjc9E8DbV+rDzBY/eu9x92OX3f0cM7szqhUHvokqd3UTKpl2DwD/COAaddtXu/u57Z9Vmr6mE+YUV7PrM4qH4iRQus3s+qD6XhJXjURtH4mr1FjdE1eRtamSY2VcLTBMTLDjKZoq1VFMP4VF0VFISjVT2Hbmjre6V3NLiH7iWOiZ3XL3c8zsNFSBMzcws2Pc/XPL29UF2p84clP74Jc0z0JVTB4AznH3n6/UqC74/i4AD6tvOhst6mKZ2csBPKe++idUYuuc1fS1nEHKrZqHAfgCgMMBvKz+G+UXAO7j7ltW2f/N679xLAD4ZwAvWWX/V8bS8qqL4oobK2c0TPck2ZDFFTMWd0KYbz5DLrzOnGDkFBN9FVelRVPljKQCBh5NVZjAyPraS0o1U9p2psbKl3LIFHBXyqEQ7fF+euTjAXyqvvxWM7vjaPpdLY/eDOA69U0nuftPsAJmtgHAS+urKwXZwMxeCOAT7v7TcRMys6cA+KeRm14xpp2hKvj+6PqmnwO4i7v/cVzfTZjZiwC8sL56ASpJFrZ432Dllrv/2cxuD+CpAB4B4CBUOa6/AHASgNe6+2qX33w7gPMB3L7udy8Au6NaCvQXAL4O4ISmN9xaUZq4yrnyICecypJkXKFziatS5lOauKK2oaKpmulrGmBh8iIs4giIi6ZSil97ulh3SlIqYKzpvhYv/+B/bbs8f1GVMfP8oxvqRYf9IBLSjRCDpaq51T9J7O6fNrOPAHgogOsC+IGZvQ1VPa6roxJHt66b/wFVRFUbHgzg5XXE2NcA/BTAXwDsAOD6AB4A4GYj7d+PKottJV6BpYLvWwG8AcCtiePWL7j75aM3mNkTcWWh9iZU0Ww3SPT13+5+YWpAYMByCwDqqKzX1n+TPnbsK+ruZ6JKacyGIR3BxIgihpziaiZKunRQkklcpTrKmbaZT2r2dsXAnoqrThZVLyyaKiySKrMAk5QKgJmPpFQzPZJSEzNmPq/40Ge3u+35x9x+/HSYtMSehpMIURQO9DgD+DGo/N3DUAW+vHCFNucCeKC7/zZozFtgqY74SswBeDWA4xuK149+ea5HJbcYDgDwq2W33WHZ9ePJvu4C4FSm4aDlVq+wtMDpZgH3IEkWJGYkrlJtJK4a21BSSvWrEo1i+ilNXJUmOKKiqTqY3gewz62w1M2gsShyRlNJSgWM1Q0ptWYwn8EFhWUJkYM+Rm4BgLtvBvBwM3sPgMehKuS+D4BLAZwD4GOoMrsuCxjuUQDuCOB2AG6CSqZdHcAMgD+jKgb/NQDvaloEr4tIbvUGS55AlVbAPWo1QImr1Hy6J66KKyjPzKew+lXFybYOSimG4oqq9zWaKmckVdVZuk1hspEbrDA50cHoN4rebucObsPF7hr2d9R3R9B0VJheiPE4gL6XrnP3U9BiJUR33wBgQ6LNGQDOQFXHqxXufue2fYz0dSyAY6P6WwnJrb5gaXnFiCJK8ASl+IUVlC8sLVHiqn0/OWuSlVZ4nRNpiqZq3Y+iqdoTNFb2Ffy6mOLXW1nS02iq4rZzYduHIVJWo/k7n/mhJ6rKNVOYXojB4lqYQbRDcqsnGKLSEmNORKJWAywtuouLysr33CWuUo1iZIkKrwf001Nx1dtoqh6v4CcpFYCkVDOSUu1p8dxf+H/vs+3ywsV/ri40Rm4xY2m1RCFy0NOsRJEJya2+YOmd8+wO+cTMkMUVI/bi5hyTVpZTXEX1M+TC65yMHLCUYihMNA46mip3JJWKobdHUqoZSak8jNk+L3r0/bddnv/lz9P9lLZaolIXxYBZkCQWLZDc6g1GRG5F1YIKqk0lcRXQD5NG2r1os06KK9Wvaj8fRVO174cgLJqqsJRMfsCMJ/GSUol+JKUaCU7Na6S0506NxXwGY/bfWYUTMx8heoi797agvMiD5FZPMANmEnWccoqrqLREiatEmyBxFZdOWJYEUv2qRD8DFle9LZheWmRb0FihJ8ySUgH9SEo1IimVGCvf+4c75mC+E5SWKEQOgsrbiYEiudUXiLTEqKLqWetpSVy17idMXOVcMTBqzjnFVc5IMkmp9mSMpiotxa+TUioy1akwSUhR2naUlGqmgNS8yfvJOOec8o8Zi4rcSosr62vAlWyDyMiCIrdECzLuXYQQQgghhBBCCCGEiEWRW70hXXOLieBRVFZEP4rKaj1WUPRJ1FhKFUx008VUQdWvChissILqkWlVirhqRhFXiX46mOLHELSdPWtkW8w+zGeGHL3U15A0USKquSXaILnVE8zSoiPnKofcWMMVV1FjMYIwSqhQK/QNuDg7VZB2yFKKobRUwdLqV0lKJcbqaNF5hpwrbjJISgWMVZiwJMgrpWKeF/Nd78x3dJTgUV0uIcbirtUSRTskt/oCUXOrNFFU2nyiaiaVJq5yrirIjJWzOHuYcFI0VWowYizVr2o7Vm9X+SstSgrIvI0Ke/5DLoauKKhmssq/1Y/19dPPWrpy4R8BAHc8+MDxQzHHClHRJCoII0QjCtwSbZDc6glmlpRFUcJA4irVT/fEVc5VBakIsC6mAUaJvdKkFENp0VSlpfhJSrUfi+qHnI+kVDNdlCWKgmombDt3Y/vc4x9evt1tV3zw1ePHinrdF4acuihEDFp1VLRBcqtHpE4MGaEicRUwn5xpdwOuX6U0wORgxFiFSSmGvqb4SUo1EykdJKUS/XQwcktRUMWMVew2bPrei5ozc1zCoNAVMVDcXaslilZIbvUFs6S86qu4yltzq4PiKmP9qr6mAYZFZeWUUgyFRVNJSqXGKkxeFPZe5fuSlGruR6l5jQwsCmpiSpWjDfOyWeJ0yBWVJUQOFLkl2iC51ROYgvISV4l+glYMjCq8nrV+Vca6XGFjFSZUehtN1cW6U30thj5kKRW6EmJPn1thUVAMYdKlg1FQEk6ZaTr2oH44II7JdFIuRGskt0QbJLf6AlFzq4viKiyaKqO46mT9qqDto2iq9v30NsVPUqo9Q5ZSuVcL7KIMKC0KqoPCiUFSKoApC9QjDj146crWLdX/hmMG6niCOeEOykoUYrC4HLFoh+RWT2Ait4YsrkorvJ4z5TAqDZCZs6KpIuZT1jYsTsxISrUfi+qHef90cM50X2UJJ4bipJSEU8BY/RFOo0z79frcm/9p2+XZC85LP4B5TRlxpdRFIVrhUOSWaIfkVo9IyZDSxFXWFQNLq1815DTAoG0oKRVAzrpTklLtx1KtqEQ/gSfMioJqjYRTAD0SThOT83uBitwixJUpdEuIdjhcBeVFCyS3+oJZOnKrMHGVs/B6VP2qTqYBRqXvKZoqMZ/Coqm6WAxdUqoZSalmAkVAcVKqi1FQEk6t6a0gJPCsKc1M5BbRRpFbQrTDgQVFbokWSG71BktKjNLEVc7C60oDTHSjaKrEdCSlWvfDICnVTM45FyacQk/yFQXVTGnvIQYJpyyECSeGsO8g4liKObajxFVQ5JZO7sWAUeSWaIPkVk+wGcPsDs0vZ1iNq6hVDnPWr4qquRUltxhhwMw5ZzQV89wlpdqTcftISiXIWcS8NKFQmpQKradV2HNjKO39wSDhlIVOCqcgqOce9j2ecTsru1EMFNXcEm2R3OoRybTE0gqv56xfFZQGqGiqiPkEpVIylBZN1VcppSLmAf3kE4TFCafMsqC450+NVZa0ZOircMoqkxi6KJxykvPHFwamdpcQQ8Ult0Q7JLd6gpklxUtU+l7O+lVhkVJRRdUVTdVMF6OpJKXaU5qUKi3KRVKqkeKeFz1eWe8PBgmnTGTczkN+7hTU/ikqLZEg6sc7IXqJY0FpiaIFklt9wdLSKSxyK+fKgxnlVhejqajnJSmV6KcwWSIplWcsBuK5FydmShNODKW97iylSUuGvgqnwoTKkJ97aWmb3EqI80RHxPNSVJYQrVHklmiD5JYQQgghhBCiF1zlVsdsd9sVX3rPGsxECCFETiS3+oIZZhIF5bMWZy+sxlXOyK2s9asypkl2MuKKIevzKiziKud8CkvhUsRVgi5GUwWm9ymaKgCl5pVDYdsn6+eLGNOi0hKVcihEKxxaLVG0Q3KrJ5hZUrwUV+Oqi6mCYWNlTBUMqsslKRUwH4YBS6nyxIyEU2tKk5EsEk6t6evzopBMamYttk/TmNQ+nhFgOikXohUOLCgtUbRAcqtHJFdLDBJOg46mmiU+Mqpf1b6fIUup0up7EZQnbzoo0qixehr9xhC4nfsqXQYdvVTYc5dMao8jdht6U3TWbDoqyySuhMiCam6JNkhu9QUz2Pr1zU0KWzGQk2QZo6mU4te+n9KkVGnF0LsoJxQFleing69pFGGvaUdXOSToq0ijyBr9NtznHkW0TGpL+GenMXKL+UGEGCNqRUUhBosrLVG0QnKrJzBpiaWlCha3GmDUWJJS7eej1Lz2UM+rMKEi4dSeLgqnzGKit89NMqlT9F4m5WDMnP9y2le3Xd7hsouS3TghpajIrS5uQyEKwh1wrToqWiC51RfMYOvzFJSPquGUNcWvi3WnJKUS/WTcPgSlRUFJODVT3PYhCDv5VORS0Hhlnch2UaJGUZooYuiTTCoZ5nPBHEcqckuIPKjmlmiD5FZfsHTkERWZ1MUUP2aVG0mpcsZSFFQjeSWZhFNbJJwS9Fi4SCaVg0RRHoqL2GOI+gGUiSZhis4LIRpRWqJog+RWXwiquZWzEHzYAYekVJ6xFAWVZSwJp2a6KGa6OGdurB6nwRUmHiSTEpQ2H4JOiiKC0t4b1HyMEFfMj7Y6KReiHe4qKC9aIbnVF8xg65rlVnF1p4LSEiWlAvrpYBRUadKlOPnHUJpw6mL0kmRSewo7GQYkk5IUNp8uiqLiXtMoCnstGldJnAAjUg6p1EUhxFgcWi1RtENyqycY0gXlw+pOdVFKhaUu9jQ1b8hpdxJOzQw5ekkyKQu5RVJxUqG0+RCUJpOKe02jKGw7R1Hc/oBo40zKoSK3hGjNgmrXiRZIbvUFM2Bd4uUMqpUVF7kVlXJYmJRSFFSiTWFij0HCqZkOihnJpExjFfbcAZT3ehQmMIp8zVIUtg2j6ORrQZD1OygocosSV/18GwqRD1fklmiH5FZfMAMSNbckpdrPJ2cUlIRTAgmnZgrbzgylvTcYBp2+VtiJd2mSCOionChwO6bo5HYmKO37JSdx+0LmGChIXCniRIhWOFRzS7RDcqtPpH6d6qKUIubcySioAQun0uRNafORTGpm0FFHXXxvBFHca8FS2HZk6OK2lgQaKGM+X/c79rilJgtzAICTT3jNxP1MPh+tlihEW7RaomiD5FZfMANSBeVzphx2MQqqsDpPEk4BFCZvJJMSY/U06kiiKEFh24eluO1I0FcJ1MXXIoyOfn6mybe+98PtbsvxHjHopFyIVjiwsKAISLF6JLf6AiO3ckqXmZi3VtYoqAELJ8mkBJJJzRR2YplTJhV3Ut3BE93itiEkgXpJBz8bUTgG/LrXNNbecmL7MKslTjAfIcTKKC1RtEFyqye4GTxVUL60KKi+CqcuRi9JJrXvR1FHAWMVdgJW2MlwadunrwIIKG9bh1HYezonEjzNlBZhGk2j3FqYT3cQlHJoSrkSYiwOh6t2nWiB5FZvMPhspoLyOVMOCYoTTlllm2RSaySK2lPYSVFpYqKLEqi0bRhKYe/XKCRvmum7vGlLrz/zSDw/5qkHSSnX21CI8Wi1RNESyS0hhBBCCCFEL/j4e07Ydnl2fvMazkQIIUROJLf6AlFzq4vRVL1NzYsaq7QoKIbSUiCpsRQFlWUsRTjlobD3WBRDj1xSZFIznfysFkZXvqNvd+tbbbu8fu4KAIl6WNQxa7s5betGKVdCNKLILdEGya2+YIaFZFpiYal5kkntkShqpq/Pi6C0k5DStk8XBc+Q5c3QxU1xn58OUtp3Yl8p7b3aWGtrEabmVhAeVLtLiH7iWJAAFi0YpNwysx0A3ALArUf+boDqd5nPu/s9Ase6HoBnA7gHgP0A/BXAaQD+w90/FTVOVXMr4OXMWVCeQDIp1U/3RFFxB75dXJ0wig4Kg74Knr7Km+Le8wUi6ZIHvRe7RdhxErPP0FtDiCLwntbcMjND5RoOB3DL+v9hAHavm7zH3Y+d0tjrARwL4GEADgZwNQAXoPIR7wfwUffVFxU0sy8AuNvITY919xMb2p8I4DFs/+6TVSocpNwC8AgA7572IGZ2TwAfAbDbyM37ADgawNFm9k4AT2zzhlrEjSgoz/RDHGRLFCXoabRQbyVQB6VCFwVPF+XNkE+GJVxiGPJ7qDS6+B0kmuGOWYnX3fU5FaIUfKGXkVv/BuBZuQc1s/0BfAJVUM8o16z/7g3gCWb2YHe/eBX9PwZXFltrzlDl1iILAH4G4HsA7ghg/6iOzeyGWBJbvwLwDADfBvA3AF4E4MEAHg/gFwBeGTAiFlKhzhlX3ytNFHVRAhV3UpRT2kneZKG491gQQxYzfX1NS6SLn/khM+TvhSGTPDYGYNa/SBEhOklPI7cALP8iuhTAb1FFUk0FM9sDwOcA3Ki+6acA3gXgdwCuD+BJAK4N4CgAnzCzu7v73AT97wPg3+urlwHYdRXTfDKA81fxuLEMVW59C8CRAL7v7pcCgJmdikC5BeAVqMTWZQCOdPdf1rdfYGYPRfUGuCeAF5jZO939T20G86CaW5JACQYseEo7keviSfyQT666+HrlpLTPV58Z8udwyOg7aJgsEDW3jEigUCF4IXLg8H5+1s4C8FoAPwDwfQBnA7gTgK9OccyXYklsnQLg/u6+afFOM3sLgC+hiuq6CyrR9OYJ+n8jqhTH0wH8BMAjVzHHL7j7r1bxuLEMUm65+9mo3lRTwcz2BXD/+uoJI2JrcXw3sxegklu7AngUqnDFNqNiYab55Swtmoohp+DpbVH1ILp4QtjF7RyFZEkzXXw/D5khf5ZFDPrMDxPqdWcyF1UIXoip4wAWehi55e4nLL/NpnicXkdV/V199TIAjxkVW/Wc/mxmjwbwY1Tfgi82s/9w9+QKG2b2twAegioL7kkAnho5/zYMUm5l4F5YKk950koN3P1HZvZzVGGB90FbuWWGhZnmyK2+ypvSDlj7ehLWV1lS2vunr/T1c9FX9LkQfUPfQcPhtW9447bLi1FZz/r78edezKm0IreEyID3tuZWbu4HYIf68ofcfcXUP3f/iZl9BcBdAeyLKprsK00dm9lVALylvvomd//eNEXdpEhuTYfD6/9zqMIPx/EdVHJreZG3iXEA87kit4LooiwZ8glfae+fLjLk949oRp8vIaaLvn+Hw+vfuH1mzT/8/dNa9anILSFy4H2tuZWbu49cPiXR9hRUcgsA7oGE3ALwL6iK0f8OVR3xopDcmg4H1f/Pc/fNDe0W0xV3N7NruvvvVzugwzont6LQAWse+vr+EXnQ51QIsZZoHzZs9PoL0Q16WnMrNzcdudwUaANUNcBWetx2mNkdUaUhAsDTF2uXt+Dt9SJ8+wK4AsB5AL4J4H3u/vXVdCi5NR32qv9fkGg3GiJ4dQCrllsww3wqLVEnl6IFOjAUQgjRVXQMNGyYVROFEGtMf1dLzIaZzQC4Xn11HlWEVRO/Hrl80LhGZrYTgLejqs/1SXf/VItpLnLUyOUdAFwVwI0BPMHMTgbwaHf/8yQdSm5Nh8WlMDc1tqoM5SK7rdTAzDagWu2gkX322QfzppdTCCGEEEKIURb0A50QxePw1dbc2s/MGCt2vLtvWM0AHWI3LDmei919LtH+opHLezS0eykq+XUpgKevenYVlwL4IoDvAvgtKgl3LVTplIsplfcC8DUzu4O7X8J2XLwNMbNdAFynZTc/cyfW+Y1j8efB1JijPyO2mt/5559/+fWuf/2f1lf3G7nrvDb9CiEo9JkTIi/6zAmRl05/5q5/veulGwlRFit95q67FhPJxWV/Pfvz3/yvO++Vbrkde0TPpcOMBsykAm2AKwfb7L5SAzM7FMD/q6++sE0pJQBvBPBUd79shfteY2ZHoFqQbx9UaZKvAfBEtvPi5RaAWwP4ass+dgb34kaxcWTcJnYaubzSCzwJ/7pookfNtbvvN/YRQogQ9JkTIi/6zAmRF33mhMjLED9z7n6P1TyOzXRqePwTUEUOtaawyDAmeKaxjZnNAngnKm/0PQDbr9gxyYTcG2uAufs3zOwBAL6BKhDosWa2gRVqXZBbXeTC+v/eiXaj91+0UoP6A7Kh/ZSEEEIIIYQQQoj+EHC+/AQAtwmZzNqft28cuZwKtAGAXUYur1Qg/tkADgMwB+BJnqHiv7t/08y+AOBoALP1/3cxjy0+Ad3dT3V3a/mXM2oLAM6u/+9nZjs0tDug/n9py/A+IYQQQgghhBBCDJeNqEQUAOxRR141cfWRyxeP3mFm18eSrHutu58eMD+WU0cu35B9kCK3psNiuN06AIcD+PaYdouG+LSpz0gIIYQQQgghhBDbcPfbrvUconD3BTM7F5UQmkWVbvnrhoeM1nE7e9l9/xdV9JcDmDOzF43p42Yjl+9jZospnl9w9+/Sk78yo1lte7IPktyaDicDWEAVGfcgrCC3zOwQADeor34m39SEEEIIIYQQQgjRQ36CpWinW6JZbt1y2eNGsZH/zyfHfkD9B1RRZKuVW2MjypooPi2xi7j7nwB8sr76JDNbaWWLV9b/LwPwviwTE0IIIYQQQgghRF/5/MjloxNtR4v4nzKFuayWO41cXh5RNpbByi0zu+3oH4Cr1Hddddl9txjzeK//ThwzxAtR2crdAHzVzO5tZnub2SFm9mEA967bvbKWYUIIIYQQQgghhBCr5VMAttSXH25m+6zUyMxuAuDI+uofAXxt9H5338DUNwfwnpGHPXbkvtetZvJmdnssSbkFXFnWNTJYuYUqVXD0b1Fi3XbZ7Z9c8dEJ3P1nAB6GSnAdgCr18HwAPwbw0LrZuwC8anXTF0IIIYQQQgghxBAwsw2pIBt3vwDAW+qruwE40cx2WtbPnqiyxxZTD1/u7vNTmvbimI82s7uZmTW0+T+o/Mtim/e6+2/ZMVRza4q4+8lmdiiA/4fKPu4H4BIAPwTwNndflTgTQgghhBBCCCFE2ZjZHqh8wCijZYtuYWYvX3b/V9z9Ky2GPR5VyuGNABwD4Idm9g4AvwdwfQBPBnDtuu2pAE5oMRbLYQCeAeC3ZvZ5AGcAuADAPKrC93ev/xbF1pkA/mGSAQYrt+oQuqk/3t3PBXBcm7FWwfGZxxNi6OgzJ0Re9JkTIi/6zAmRF33m+sMeqEoWjeNmuPKKgwAwB2DVcsvdLzazYwB8AlWG2o0BvGaFpl8C8GB337rasVbBtQE8IdHmkwCe6O4XT9LxYOVWn3H3DWs9ByGGhD5zQuRFnzkh8qLPnBB50WdOtMXdf2VmtwFwLKpySTcBsCeACwGchiot8aPu7pmm9K8AfoCqDNRhAPYFsBeAnQD8FcAvAXwLVSriD1czgOV7LkIIIYQQQgghhBBCxDLkgvJCCCGEEEIIIYQQouNIbq0hZnY/MzvFzP5kZpvM7Bdm9hYzu15A37ub2UvM7MdmdqmZXWxm3zWzZ5rZerKPO5vZx83svHp+vzGz95rZLdKPFqI8pvGZM7PrmNnTzewTZnaumV1R//3CzN5vZnck+nDyb6/VzlOItWBKn7kN5OflTURf2s+JXhH9mas/I+w+ys1sxZQQ7edEn7CKG5vZY8zszWb2PTPbXL+HNwWOo/M5ISZAaYlrgJkZgHcAeNyYJhsBPNTdP7vK/g9AVRzuwDFNfgDgbu7+l4Y+XgrgpVharWCUrQCOc/d3rmZ+QuRmWp85M3sQgI9i5c/JKO8A8JRxS+yOOxlYgb3d/cIJpijEmjDN/ZyZbUC1f0rxZnd/WkM/2s+J3jDF/dydAXx1goec6e43XaEf7edEbzCz/VHVB1qJze6+U8AYOp8TYkIUubU2PB9LBx8fBXBzAPsAuC+AXwHYDcBHzOygSTs2sx0AfAbVF+EVAJ6OamnNAwBsALAA4HAAH2no4xF1W0O1SsNt6/ndFcDpANYDeBsTkSJEIUzrM7cbqs/J7wC8AsCdAOyHqkDifQAsFkN8AoB/Jvp7CoDdx/3pgF90iKnt50b4DRo+LwCeNe6B2s+JHjKtz9w30Pw52x3A3460f2+iP+3nRN/4PaqV3b4R1aHO54RYHYrcyoyZ7QvgXAC7AjgZwH1GVyioLf0Z9f0nufuDJ+z/aQDeWF99iLt/bNn9z8XSSfa93f3kZffvBOAcVF+gpwO49ejSoGa2B4AzUZ3Af9/dbzXJ/ITIzTQ/c2Z2NKrPwntXisoys50BfBPVErxzAPZ399+v0G5xPo919xPZ8YUokQz7uQ2ofon+tbvvv4r5aT8nesW0P3PE+O9GtRrXAoDraD8n+o6Z7Q7gSADfcfc/1rdtQLVvah25pfM5IVaHIrfy82hUBxcA8MLlS2+6+y8BvL2++oD6gGUSjqv/n7b8i7DmtQAuWNZ2lPug+iIEgJeOfhHW87sYwL/UV29pZreccH5C5GZqnzl3/7y7v3tcuqG7XwHgn+qr6wAcNdHMhegm097PtUX7OdE31uwzV/+I88D66ldWEltC9A13v9TdP70otqaAzueEWAWSW/m5T/3/HHf/0Zg2J9X/ZwDck+3YzA4EcPCyPq5E/eX26frqXc1slzHzuxzAuLoMo33fZ0wbIUphap85krNGLu8X3LcQJbLWn7kU2s+JvrGWn7n7oUopBID3BfYrxCDR+ZwQq0dyKz+LK1N8p6HN9wEsRoIcNkHfh49cbup/8b6dANx4TB8/dPe5lR5c/yq3+MvcJPMTYi2Y5meOYfQX8kuYB9S1FoToKlk/c2Y2Y2brJniI9nOib6zlfu5R9f/LAHyCfZD2c0KMRedzQqwSya2MmNk1URX0BIBfjGvn7psB/KG+eqMJhhgtEjq2f1x5dY9t/ZvZDIDrE48f7WOS+QmRlQyfOYYHjlz+n0Tb55vZXwBsNrMtZnaWmb22XpVHiOLJ/Jnbx8zOBLAFwFYzu8jMPmdmDzez2THz035O9Iq13M/V6Y13q69+0t03Eg/Tfk6IZnQ+J8QqkdzKy14jly8Y26ri/Pr/1afQ//kjl0f73x3A4i9p05ifELmZ9meuETO7PoAn11e/5+4/SDzkIAB71JfXo/ol7pkAfmpmj46alxBTJOdnbmdUqRuLIutqAO4B4IMAvmJme63wGO3nRN9Yy/3cw1HVkwT4lETt54RoRudzQqwSya287DpyeVOi7RX1/90aW62u/ytGLo/2P+35CZGbNXtP1yvVfBjAjqhSQZ7R0PzbqJZHPxTVAcZOAG4C4HhU894JwLvN7F4RcxNiiuT4zF2MahWpo1Etk74TqpOB+6L6LAHAHQF8eoUILu3nRN9Yy/f0YkrieQC+lGir/ZwQHDqfE2KVTFKjQrTHRi772FZXbptqN67/1cxj2vMTIjdr+Z4+AUs1Dza4+7fHNXT3269w81kANpjZ5wB8FVWUyhvM7JRxqzMKUQBT/8y5++tWuHkzgP80s5MBfAjAgwHcHtXJ94k55ydEZtbkPW1mN8ZSnZ4PuvtCU3vt54Sg0fmcEKtEkVt5Ga1FsHOi7U71/8tW2f9OY1td+b7R/qc9PyFysybvaTN7JZZ+0T7R3V++2r7c/TsA3lBfPRDAbVpOT4hpsqb7kfqE+DhUK0QBwCOWNdF+TvSNtXpPP2rk8nvbdKT9nBBXQudzQqwSya28XDhyee9E28X7L5pC/6P3jfZ/KarCvKnHj94/yfyEyM20P3PbYWbPBPD8+uqnADyhTX81nxm5fGhAf0JMi+yfueW4+0UAvlVfPXTZ3drPib6xFvs5A/B/66s/cvcz2vRXo/2cEBU6nxNilUhuZaRecnXRph8wrp2Z7Qhgv/rq/04wxNkjl8f2v+y+bf3XIeU/Jx4/ev8k8xMiKxk+c8v7eQyAf6+vfhnAw4JSK0aLhu4R0J8QUyH3Z66Bxc/MHqM3aj8n+sYafebuBOA69eVWUVsjaD8nRIXO54RYJZJb+Tmt/t8Ucn04llZ/+uEEfY+uxNbU/+J9mwD8dEwfh5nZijXZzGw/ANdaxfyEWAum+ZnbhpndH8A7UdUv+A6A+9VLr0dwjZHLFwf1KcS0yPKZS7D4mbl4hfu0nxN9I/dnbjElcR7V6qQRaD8nRIXO54RYJZJb+VkMuz7IzA4Z0+ZB9f8FAJ9lO3b3X6Aqzjnax5Wov+D+tr76ZXe/fFmTxfntCuCYxPxG2wtRKlP7zC1iZndFVcR6FsAZAI5x943Nj5qI+45cPm1sKyHKYOqfuSbMbG9UxeSBlT8v2s+JvpHtM1evBLzY15fc/Y+r7WsZ2s8JAZ3PCdEGya38vBdLhW5fsfxOM9sfwJPqq59w9z9N2P9b6/+HmdkDV7j/mQD2XdZ2lM8A+H19+XgzW79sflcF8Nz66vfd/fsTzk+I3Ez1M2dmt0ZVW2tHAOcCuLu7/2WCx18zcf8RAJ5WX/05gO9OMj8h1oCpfebMbK86vWrc/esBvB1LRXI/sEIz7edE35j2seUo9wVwlZFxk2g/J8TE6HxOiFUguZWZ+oBi8cDjPmb2YTM7xMz2NrN7A/gKKsu+EcALlz/ezE41MzezX40Z4gQAZ9aX32dmf2dm+5nZdc3sJQBeXd/3RXc/eYX5bQLwvPrqLQB8zsxuXZ9Q3AXVUs3XRBWK/uwJn74Q2ZnmZ87MboTqF/DdUNULuR+AjWa225i/HVaY4mfM7HNm9ngzu1n9Wbu6md3SzP4FwJdQibN5AE/T8uiidKa8n/s/AH5pZv9iZnc3s+uY2VXr/w8D8D9YigD5GoD3rzA/7edEr8hwbDnKYkripah+2GHQfk70DjM72Mxuu/iHpRQ/G729/ttx2WN1PifEFDB3X+s5DA4zMwDvAPC4MU02Aniou28XNm5mp6Iq5Plrd99/TP8HoDpQOHBM/z8AcLem6BIz2wDgJajqBy1nK4Dj3P2d4x4vRElM6zNXf05eOsFUjnf3Dcv6OB3AzROP+yuAJ7j7SROMJcSaMcXP3P0AfJKYwskAHunuFzfMcQO0nxM9YdrHlnW7vQGcB2AdgBPd/bHk3E6H9nOiZ4x8bhgOcPdfrfBYnc8JEYgit9YAr3g8gAcA+DyACwBsBvBLAP8B4NCVDj4m6P+XqJZRfimq+j+XAbgEwPcBPAvA7VJpU/UJ+JGoTiL+iGpJ2d+h+hX8NvoiFF1i2p+5ljwbwD+jijL5FaoTkK31HL8G4AUAbqADftElpviZ+yaq9KUPAvgJqojJrag+N2cDeB+q1OB7N4mteo4boP2c6AmZ9nMPRyW2gOqzxqL9nBATovM5ISZHkVtCCCGEEEIIIYQQorMocksIIYQQQgghhBBCdBbJLSGEEEIIIYQQQgjRWSS3hBBCCCGEEEIIIURnkdwSQgghhBBCCCGEEJ1FcksIIYQQQgghhBBCdBbJLSGEEEIIIYQQQgjRWSS3hBBCCCGEEEIIIURnkdwSQgghhBBCCCGEEJ1FcksIIYQQQgghhBBCdBbJLSGEEEIIIYQQQgjRWSS3hBBCCNEZzOwhZuZmttnM1q/1fIQQQgghxNojuSWEEEKILnF4/f8n7r51TWcihBBCCCGKQHJLCCGEEF1iUW6dtqazEEIIIYQQxSC5JYQQQogucVj9//S1nIQQQgghhCgHc/e1noMQQgghxFjM7KoALk40O9/d980wHSGEEEIIURiK3BJCCCFE6dyUaHPG1GchhBBCCCGKRJFbQgghhCgaM5sFsDOApwN4JYA/ADhoWbOt7r4599yEEEIIIcTas26tJyCEEEII0YS7zwPYaGY3rm863d03ruWchBBCCCFEOSgtUQghhBBd4eb1f62UKIQQQgghtiG5JYQQQojiMbMdAGyL3FrDqQghhBBCiMKQ3BJCCCFEFzgYwPr68ulrOA8hhBBCCFEYkltCCCGE6AKH1v83Avj5Gs5DCCGEEEIUhuSWEEIIIbrAofX/H7uWehZCCCGEECNIbgkhhBCiCywWkz99LSchhBBCCCHKQ3JLCCGEEF3gpvX/H6/pLIQQQgghRHFIbgkhhBCiaMzMAOxVX71kLecihBBCCCHKQ3JLCCGEEEVT19j6U331KWZ2sJntbma7mdlOazk3IYQQQgix9khuCSGEEKILvLP+f0cAZ6KK4LoUwH+s2YyEEEIIIUQRrFvrCQghhBBCELwEwJ8BPAbADQAsRmydvlYTEkIIIYQQZWBaTVsIIYQQQgghhBBCdBWlJQohhBBCCCGEEEKIziK5JYQQQgghhBBCCCE6i+SWEEIIIYQQQgghhOgskltCCCGEEEIIIYQQorNIbgkhhBBCCCGEEEKIziK5JYQQQgghhBBCCCE6i+SWEEIIIYQQQgghhOgskltCCCGEEEIIIYQQorNIbgkhhBBCCCGEEEKIziK5JYQQQgghhBBCCCE6i+SWEEIIIYQQQgghhOgskltCCCGEEEIIIYQQorP8f0v9kv9IfMWUAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 1440x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import torch\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.ticker import FixedLocator\n",
    "\n",
    "# Assuming you have defined concatenated_tensor as a PyTorch tensor\n",
    "# concatenated_tensor = torch.cat((tensor1, tensor2), dim=0)\n",
    "\n",
    "# Convert concatenated_tensor to a NumPy array\n",
    "concatenated_array = concatenated_tensor.numpy()\n",
    "\n",
    "# Define custom color levels\n",
    "x = np.linspace(-1, 1, concatenated_array.shape[1])  # Replace 0 and 1 with your actual x range\n",
    "t = np.linspace(0, 1, concatenated_array.shape[0])  # Replace 0 and 1 with your actual t range\n",
    "X, T = np.meshgrid(x, t1)\n",
    "\n",
    "# Define custom color levels using the minimum and maximum from the NumPy array\n",
    "c_levels = np.linspace(np.min(concatenated_array), np.max(concatenated_array), 400)\n",
    "\n",
    "# Plot the contour with interpolated data\n",
    "plt.figure(figsize=(20, 5))\n",
    "plt.pcolormesh(T, X, concatenated_array, shading='auto', cmap='coolwarm')\n",
    "\n",
    "# Set the fontweight for axis labels to regular (not bold)\n",
    "plt.xlabel(\"$t$\", fontsize=26)\n",
    "plt.ylabel(\"$x$\", fontsize=26)\n",
    "plt.title(\"$u(x, t)$\", fontsize=26)\n",
    "\n",
    "# Set tick labels fontweight to regular (not bold) and increase font size\n",
    "plt.tick_params(axis='both', which='major', labelsize=20, width=3, length=10)\n",
    "\n",
    "# Set the fontweight for tick labels to regular (not bold)\n",
    "for tick in plt.gca().get_xticklabels() + plt.gca().get_yticklabels():\n",
    "    tick.set_weight('normal')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 5\n",
    "num_ticks = 5\n",
    "x_ticks = np.linspace(np.min(T), np.max(T), num_ticks)\n",
    "y_ticks = np.linspace(np.min(X), np.max(X), num_ticks)\n",
    "\n",
    "plt.gca().xaxis.set_major_locator(FixedLocator(x_ticks))\n",
    "plt.gca().yaxis.set_major_locator(FixedLocator(y_ticks))\n",
    "\n",
    "cbar1 = plt.colorbar()\n",
    "# Set the number of ticks for the color bar with uniformly distributed numbers\n",
    "num_ticks = 5\n",
    "c_ticks = np.linspace(np.min(concatenated_array), np.max(concatenated_array), num_ticks)\n",
    "cbar1.set_ticks(c_ticks)\n",
    "\n",
    "# Set the fontweight and fontsize for color bar tick labels\n",
    "for t in cbar1.ax.get_yticklabels():\n",
    "    t.set_weight('normal')\n",
    "    t.set_fontsize(26)  # Increase the font size for color bar tick labels\n",
    "\n",
    "# Increase the size of numbers on axis and color bar\n",
    "plt.xticks(fontsize=26)\n",
    "plt.yticks(fontsize=26)\n",
    "\n",
    "# Increase the tick size and width of the color bar\n",
    "cbar1.ax.tick_params(axis='both', which='major', labelsize=30, width=3,  length=10)\n",
    "\n",
    "# Add a dotted line at t = 0.8\n",
    "plt.axvline(x=0.8, color='black', linestyle='dotted', linewidth=5)\n",
    "\n",
    "#plt.savefig('Contour_LEM_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "plt.savefig('contour_GRU_20.jpeg', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
